Upload
charles-sanders
View
220
Download
0
Embed Size (px)
Citation preview
8/21/2019 Practical Android
1/89
Patel Group of Institutions
SL-MC(650017)
Exercise : 1Create Hello World application. That will display Hello World in the middle of thescreen in the red color with white background.
Screen Shot:
XML :
main.xml :
PGI Page 1
8/21/2019 Practical Android
2/89
Patel Group of Institutions
SL-MC(650017)JAVA :
FirstActivity.java :
package"gi#$irst%
importandroid#a""#&ctivity%importandroid#os#'undle%
publicclass(irst&ctivity extends&ctivity) publicvoidonreate*'undle saved+nstance,tate- ) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% //
Exercise : 2
To understand Activity !ntenta. Create sample application with login module."Check username and password#b. $n successful login go to ne%t screen. And on failing login alert user usingToast.c. Also pass username to ne%t screen
Screen Shot:
PGI Page 2
8/21/2019 Practical Android
3/89
Patel Group of Institutions
SL-MC(650017)
XML :
main.xml :
8/21/2019 Practical Android
4/89
Patel Group of Institutions
SL-MC(650017)android:layout_align0arentLe$t="true"android:layout_marginTo"="0dp"android:text="*nter assword :">
JAVA :
SecondActivity.java :
package"gi#,econd%
importandroid#a""#&ctivity%importandroid#content#+ntent%importandroid#os#'undle%importandroid#view#View%import android#view#View#3nlickListener%importandroid#widget#'utton%importandroid#widget#1ditText%importandroid#widget#Toast%
publicclass,econd&ctivity extends&ctivity implements3nlickListener) publicvoidonreate*'undle saved+nstance,tate- ) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% 'utton login = *'utton-$indView'y+d*.#id#btnlogin-% 'utton clear = *'utton-$indView'y+d*.#id#btnclear-% login#set3nlickListener*this-% clear#set3nlickListener*this-% / publicvoidonlick*View v- ) 1ditText username = *1ditText-$indView'y+d*.#id#t$tusername-% 1ditText "assword =*1ditText-$indView'y+d*.#id#t$tpassword-% if*v#get+d*-==.#id#btnlogin- )
if*username#getText*-#to,tring*-#e2uals* 4"gi4- 55"assword#getText*-#to,tring*-#e2uals* 467894--
) !!Toast#makeText*this 4ok4 Toast#L1;T_L3;-#show*-% +ntent i = new+ntent*this,7#class-% i#"ut1xtra*4username4 username#getText*-#to,tring*--% start&ctivity*i-% /
PGI Page 4
8/21/2019 Practical Android
5/89
Patel Group of Institutions
SL-MC(650017) else ) Toast#make2e$t*this 41rror4 Toast#*324_53-#show*-% / / if*v#get+d*-==.#id#btnclear-
) username#setText*44-% "assword#setText*44-% / //
S2.java :
package"gi#,econd%
importandroid#a""#&ctivity%importandroid#content#+ntent%
importandroid#gra"hics#olor%importandroid#os#'undle%importandroid#view#View%import android#view#Viewrou"#Layout0arams%importandroid#widget#'utton%importandroid#widget#LinearLayout%importandroid#widget#TextView%
publicclass,7 extends&ctivity) publicvoidonreate*'undle saved+nstance,tate- ) super#onreate*saved+nstance,tate-%
setontentView*.#layout#main-% +ntent i = get+ntent*-% !!Toast#makeText*this 4elcome4Toast#L1;T_L3;-#show*-% ,tring username=i#get,tring1xtra*4username4-%
TextView tv=newTextView*this-% 'utton btn'ack = new'utton*this-% btn'ack#setText*4'ack4-% tv#setText*4elcome 4username4 @4-% tv#setTextolor*olor#rgb*7AA 7AA 6BB--%
tv#setText,iCe*7A-% LinearLayout ll = newLinearLayout*this-%
ll#setLayout0arams*newLayout0arams*Layout0arams#67_'*2Layout0arams#67_'*2--%
ll#set3rientation*LinearLayout#%*27'-% ll#addView*tv-% ll#addView*btn'ack-% setontentView*ll-%
btn'ack#set3nlickListener*new'utton#3nlickListener*- ) publicvoidonlick*View v- ) setontentView*.#layout#main-% /
/-%/
/
PGI Page 5
8/21/2019 Practical Android
6/89
Patel Group of Institutions
SL-MC(650017)Exercise : Create login application where you will have to validate &mail!'"(ser)ame#. Tillthe username and password is not validated login button should remain disabled.
Screen Shot:
PGI Page 6
8/21/2019 Practical Android
7/89
Patel Group of Institutions
SL-MC(650017)
XML :
main.xml :
8/21/2019 Practical Android
8/89
Patel Group of Institutions
SL-MC(650017)
JAVA :
!hirdActivity.java :
package"gi#Third%
importandroid#a""#&ctivity%importandroid#content#+ntent%importandroid#os#'undle%importandroid#text#1ditable%importandroid#text#Textatcher%importandroid#view#View%import android#view#View#3nlickListener%importandroid#widget#'utton%importandroid#widget#1ditText%importandroid#widget#Toast%
publicclassThird&ctivity extends&ctivity implements3nlickListenerTextatcher) publicvoidonreate*'undle saved+nstance,tate-
) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% 1ditText txtemail = *1ditText-$indView'y+d*.#id#t$temail-% 1ditText txt"assword = *1ditText-$indView'y+d*.#id#t$tpassword-% txtemail#addTexthangedListener*this-% txt"assword#addTexthangedListener*this-% 'utton btn = *'utton-$indView'y+d*.#id#btnlogin-% btn#set3nlickListener*this-% / publicvoidonlick*View v- ) 1ditText txte = *1ditText-$indView'y+d*.#id#t$temail-% 1ditText txt" = *1ditText-$indView'y+d*.#id#t$tpassword-%
if*txte#getText*-#to,tring*-#e2uals* 4"gi4- 55txt"#getText*-#to,tring*-#e2uals* 467894--
) +ntent i = new+ntent*this,7#class-% i#"ut1xtra*4txte4 txte#getText*-#to,tring*--% start&ctivity*i-%
PGI Page 8
8/21/2019 Practical Android
9/89
Patel Group of Institutions
SL-MC(650017) !!Toast#makeText*this 4Login###4Toast#L1;T_L3;-#show*-% / else ) Toast#make2e$t*this 4+nvalid4Toast#*324_53-#show*-% /
/ publicvoida$terTexthanged*1ditable s- ) 1ditText txte = *1ditText-$indView'y+d*.#id#t$temail-% 1ditText txt" = *1ditText-$indView'y+d*.#id#t$tpassword-% 'utton btn = *'utton-$indView'y+d*.#id#btnlogin-% if*txte#getText*-#to,tring*-#e2uals* 4"gi4- 55txt"#getText*-#to,tring*-#e2uals* 467894-- ) btn#set1nabled*true-% / else )
btn#set1nabled*false-% / /
publicvoidbe$oreTexthanged*har,e2uence argB intarg6 intarg7intarg8- )
!! TODO&utoDgenerated method stub
/publicvoidonTexthanged*har,e2uence argB intarg6 intarg7 int
arg8- )!! TODO&utoDgenerated method stub
/
/
S2.java :
package"gi#Third%
importandroid#a""#&ctivity%importandroid#content#+ntent%importandroid#gra"hics#olor%importandroid#os#'undle%importandroid#view#View%import android#view#Viewrou"#Layout0arams%importandroid#widget#'utton%
importandroid#widget#LinearLayout%importandroid#widget#TextView%
publicclass,7 extends&ctivity) publicvoidonreate*'undle saved+nstance,tate-
) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% +ntent i= get+ntent*-%
!!Toast#makeText*this4elcome4Toast#L1;T_L3;-#show*-% ,tring txte=i#get,tring1xtra*4txte4-%
TextView tv=newTextView*this-%
'utton btn'ack = new'utton*this-% btn'ack#setText*4'ack4-% tv#setText*4elcome 4txte4 @4-%
PGI Page 9
8/21/2019 Practical Android
10/89
Patel Group of Institutions
SL-MC(650017) tv#setTextolor*olor#rgb*7AA 7AA 6BB--%
tv#setText,iCe*7A-% LinearLayout ll = newLinearLayout*this-% ll#setLayout0arams*newLayout0arams*Layout0arams#67_'*2Layout0arams#67_'*2--% ll#set3rientation*LinearLayout#%*27'-%
ll#addView*tv-% ll#addView*btn'ack-% setontentView*ll-%
btn'ack#set3nlickListener*new'utton#3nlickListener*- ) publicvoidonlick*View v- ) !!setontentView*.#layout#main-% $inish*-% /
/-% /
/
Exercise : "Create and *ogin application as above . $n successful login open browser withany (+*.
Screen Shot:
PGI Page 10
8/21/2019 Practical Android
11/89
Patel Group of Institutions
SL-MC(650017)
XML :
main.xml :
8/21/2019 Practical Android
12/89
Patel Group of Institutions
SL-MC(650017)android:layout_align0arentLe$t="true"android:layout_marginTo"="1(dp"android:text="assword :">
JAVA :
Fo#rthActivity.java :
package"gi#(ourth%
importandroid#a""#&ctivity%importandroid#content#+ntent%importandroid#net#Eri%importandroid#os#'undle%importandroid#text#1ditable%importandroid#text#Textatcher%importandroid#view#View%import android#view#View#3nlickListener%importandroid#widget#'utton%
importandroid#widget#1ditText%
publicclass(ourth&ctivity extends&ctivity implements3nlickListenerTextatcher) publicvoidonreate*'undle saved+nstance,tate-
) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% 1ditText username = *1ditText-$indView'y+d*.#id#t$tusername-% 1ditText "assword = *1ditText-$indView'y+d*.#id#t$tpassword-% username#addTexthangedListener*this-% "assword#addTexthangedListener*this-%
'utton login = *'utton-$indView'y+d*.#id#btnlogin-% login#set3nlickListener*this-% /
PGI Page 12
8/21/2019 Practical Android
13/89
Patel Group of Institutions
SL-MC(650017) publicvoidonlick*View v- ) +ntent i= new+ntent*4android#intent#action#V+14-%
i#setFata*Eri#parse*4htt":!!www#kevalnagaria#blogs"ot#com4 --%start&ctivity*i-%
/
publicvoida$terTexthanged*1ditable s- ) 1ditText e = *1ditText-$indView'y+d*.#id#t$tusername-% 1ditText " = *1ditText-$indView'y+d*.#id#t$tpassword-% 'utton b = *'utton-$indView'y+d*.#id#btnlogin-% if*e#getText*-#to,tring*-#e2uals* 4"gi4- 55"#getText*-#to,tring*-#e2uals*467894-- ) b#set1nabled*true-% / else ) b#set1nabled*false-%
/ /
publicvoidbe$oreTexthanged*har,e2uence argB intarg6 intarg7intarg8- )
!! TODO&utoDgenerated method stub
/publicvoidonTexthanged*har,e2uence argB intarg6 intarg7 int
arg8- )!! TODO&utoDgenerated method stub
//
Exercise : $Create an application that will pass some number to the ne%t screen and on thene%t screen that number of items should be display in the list.
Screen Shot:
PGI Page 13
8/21/2019 Practical Android
14/89
Patel Group of Institutions
SL-MC(650017)
XML :
PGI Page 14
8/21/2019 Practical Android
15/89
Patel Group of Institutions
SL-MC(650017)main.xml :
PGI Page 15
8/21/2019 Practical Android
16/89
Patel Group of Institutions
SL-MC(650017)importandroid#view#View%import android#view#View#3nlickListener%importandroid#widget#'utton%importandroid#widget#1ditText%
publicclass(i$th&ctivity extends&ctivity implements3nlickListener
) G3verride publicvoidonreate*'undle saved+nstance,tate-
) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% 'utton b = *'utton-$indView'y+d*.#id#btnne$t-% b#set3nlickListener*this-% / publicvoidonlick*View v- ) +ntent i = new+ntent*this,7#class-% 1ditText item = *1ditText-$indView'y+d*.#id#t$titem-%
i#"ut1xtra*4item4 item#getText*-#to,tring*--% start&ctivity*i-% //
S2.java :
package"gi#(i$th%
importHava#util#&rrayList%
importandroid#a""#List&ctivity%importandroid#os#'undle%importandroid#widget#&rray&da"ter%
publicclass,7 extendsList&ctivity) !II @authorJGGF I!
&rrayList arr=new&rrayList*-%&rray&da"ter a%inti=B%
publicvoidonreate*'undle saved+nstance,tate-)
super#onreate*saved+nstance,tate-%
setontentView*.#layout#main1-% a= new&rray&da"ter*thisandroid#.#layout#simple_list_item_1arr-% setList&da"ter*a-% for*i=6% i
8/21/2019 Practical Android
17/89
Patel Group of Institutions
SL-MC(650017)
Exercise : &(nderstand resource folders ,a. Create spinner with strings taken from resource folder"res -- value folder#.b. $n changing spinner value change image.
Screen Shot:
PGI Page 17
8/21/2019 Practical Android
18/89
Patel Group of Institutions
SL-MC(650017)
XML :
main.xml :
PGI Page 18
8/21/2019 Practical Android
19/89
Patel Group of Institutions
SL-MC(650017)
importandroid#a""#&ctivity%importandroid#os#'undle%importandroid#view#View%importandroid#widget#&da"terView%importandroid#widget#+mageView%
importandroid#widget#,"inner%importandroid#widget#Toast%import android#widget#&da"terView#3n+tem,electedListener%
publicclass,ix&ctivity extends&ctivity implements3n+tem,electedListener)
+ntegerK image+Fs=)
.#drawable#keal1
.#drawable#keal
.#drawable#keal
.#drawable#keal(
.#drawable#keal)/%
publicvoidonreate*'undle saved+nstance,tate-)
super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% ,"inner s = *,"inner-$indView'y+d*.#id#spinner1-% s#set3n+tem,electedListener*this-% /
publicvoidon+tem,elected*&da"terView argB View arg6 intarg7longarg8-
) Toast#make2e$t*this 4,elected +tem is = 4argB#get,elected+tem*-#to,tring*- Toast#*324_452-#show*-%
+mageView i = *+mageView-$indView'y+d*.#id#image%iew1-%i#set+mage.esource*image+FsKarg7-%
/publicvoidon;othing,elected*&da"terView argB-)
//
Exercise : '(nderstand enu option.a. Create an application that will change color of the screen based on selectedoptions from the menu.
Screen Shot:
PGI Page 19
8/21/2019 Practical Android
20/89
Patel Group of Institutions
SL-MC(650017)
XML :
main.xml :
JAVA :
SeventhActivity.java :
package"gi#,eventh%
importandroid#a""#&ctivity%importandroid#gra"hics#olor%importandroid#os#'undle%
importandroid#view#Menu%importandroid#view#Menu+tem%
PGI Page 20
8/21/2019 Practical Android
21/89
Patel Group of Institutions
SL-MC(650017)importandroid#widget#.elativeLayout%
publicclass,eventh&ctivity extends&ctivity)
G3verride
publicvoidonreate*'undle saved+nstance,tate-)
super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% / publicbooleanonreate3"tionsMenu*Menu menu-
) super#onreate3"tionsMenu*menu-% reateMenu*menu-% returntrue% / publicbooleanon3"tions+tem,elected*Menu+tem item- )
returnMenuhoice*item-% / privatevoidreateMenu*Menu menu- ) Menu+tem mnu6 = menu#add*B B B 4.ed4-% )
mnu6#set&l"habetic,hortcut*NrN-% mnu6#set+con*.#drawable#icon-%
/ Menu+tem mnu7 = menu#add*B 6 B 4reen4-% ) mnu7#set&l"habetic,hortcut*NgN-% mnu7#set+con*.#drawable#icon-%
/ Menu+tem mnu8 = menu#add*B 7 B 4hite4-% ) mnu8#set&l"habetic,hortcut*NwN-% mnu8#set+con*.#drawable#icon-% / / privatebooleanMenuhoice*Menu+tem item- ) .elativeLayout l= *.elativeLayout-$indView'y+d*.#id#relatiea#out1-%
switch*item#get+tem+d*--
) caseB: l#set'ackgroundolor*olor#*;-%
returntrue% case6: l#set'ackgroundolor*olor#3**-%
returntrue% case7: l#set'ackgroundolor*olor#=472*-%
returntrue% /
returnfalse% /
/
PGI Page 21
8/21/2019 Practical Android
22/89
Patel Group of Institutions
SL-MC(650017)
Exercise : (Create an application that will display toast"essage# on specific interval of time.
Screen Shot:
XML :
main.xml :
PGI Page 22
8/21/2019 Practical Android
23/89
Patel Group of Institutions
SL-MC(650017)
JAVA :
Ei)htActivity.java :
package"gi#1ight%
importHava#util#Timer%importHava#util#TimerTask%importandroid#a""#&ctivity%importandroid#os#'undle%importandroid#os#andler%importandroid#view#View%import
android#widget#'utton%importandroid#widget#Toast%
publicclass1ight&ctivity extends&ctivity)
publicvoidonreate*'undle saved+nstance,tate- ) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-%
finalandler h = newandler*-% final.unnable r = new.unnable*- ) publicvoidrun*-
) Toast#make2e$t*get'aseontext*- 0+Toast#*324_452-#show*-% / /% Timer t = newTimer*-% t#schedule&t(ixed.ate*newTimerTask*- )
publicvoidrun*-)
h#"ost*r-%/
/ 6BBB ABBB-% 'utton b = *'utton-$indView'y+d*.#id#btnfinish-% b#set3nlickListener*newView#3nlickListener*- )
publicvoidonlick*View argB-)
$inish*-%
android#os#0rocess#killrocess*android#os#0rocess#m#id*--%/
/-% //
PGI Page 23
8/21/2019 Practical Android
24/89
Patel Group of Institutions
SL-MC(650017)
*+
Exercise : (Create an application that will display toast"essage# on specific interval of time.
Screen Shot:
PGI Page 24
8/21/2019 Practical Android
25/89
Patel Group of Institutions
SL-MC(650017)
XML :
main.xml :
JAVA :
PGI Page 25
8/21/2019 Practical Android
26/89
Patel Group of Institutions
SL-MC(650017),hronometer.java :
package"gi#hronometer%
importandroid#a""#&ctivity%importandroid#os#'undle%
importandroid#widget#hronometer%import android#widget#hronometer#3nhronometerTickListener%importandroid#widget#1ditText%importandroid#widget#Toast%
publicclasshronometer&ctivity extends&ctivity) inti=B% intFuration=6B% publicvoidonreate*'undle saved+nstance,tate-
) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-%
hronometer chn = *hronometer-$indView'y+d*.#id#chronometer1-%
chn#start*-% chn#set3nhronometerTickListener*new3nhronometerTickListener*-
)publicvoidonhronometerTick*hronometer argB-)
1ditText txt =*1ditText-$indView'y+d*.#id#edit2e$t1-%
txt#setText*4Message ill 'e Fis"lay &$ter K4*FurationD*i6--4 ,econds4-%
i%if*i>=Furation-
)Toast#make2e$t*hronometer&ctivity#this
4Message4*i!6B- 6BBBB-#show*-%Furation=6B%
//
/-% //
Exercise : -Create a background application that will open activity on specific time.
PGI Page 26
8/21/2019 Practical Android
27/89
Patel Group of Institutions
SL-MC(650017)Screen Shot:
XML :
PGI Page 27
8/21/2019 Practical Android
28/89
Patel Group of Institutions
SL-MC(650017)main.xml :
JAVA :
MyService.java
package"gi#;ine%
importkmn#servicedemo#.%importandroid#a""#,ervice%importandroid#content#+ntent%importandroid#media#Media0layer%importandroid#os#+'inder%importandroid#util#Log%importandroid#widget#Toast%
publicclassMy,ervice extends,ervice
) privatestaticfinal,tring 2'3= 4My,ervice4%Media0layer "layer%
public+'inder on'ind*+ntent intent-)
returnnull%/
publicvoidonreate*-)
Toast#make2e$t*this 4My ,ervice reated4Toast#*324_53-#show*-%
Log#d*2'3 4onreate4-%
"layer= Media0layer#create*this .#raw#braincand#-%
PGI Page 28
8/21/2019 Practical Android
29/89
Patel Group of Institutions
SL-MC(650017)"layer#setLoo"ing*false-% !! ,et loo"ing
/
publicvoidonFestroy*-)
Toast#make2e$t*this 4My ,ervice ,to""ed4
Toast#*324_53-#show*-%Log#d*2'3 4onFestroy4-%"layer#sto"*-%
/
publicvoidon,tart*+ntent intent intstartid-)
Toast#make2e$t*this 4My ,ervice ,tarted4Toast#*324_53-#show*-%
Log#d*2'3 4on,tart4-%"layer#start*-%
//
ine.java
package"gi#;ine%
importkmn#servicedemo#.%importandroid#a""#&ctivity%importandroid#content#+ntent%importandroid#os#'undle%importandroid#util#Log%importandroid#view#View%import android#view#View#3nlickListener%importandroid#widget#'utton%
publicclass;ine extends&ctivity implements3nlickListener) !II @authorJGGF I! privatestaticfinal,tring 2'3= 4,ervicesFemo4% publicvoidonreate*'undle saved+nstance,tate- )
super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% 'utton start = *'utton-$indView'y+d*.#id#button1-% 'utton sto" = *'utton-$indView'y+d*.#id#button-% start#set3nlickListener*this-% sto"#set3nlickListener*this-% /
publicvoidonlick*View v-)
if*v#get+d*-==.#id#button1-)
Log#d*2'3 4onlick: starting srvice4-%
start,ervice*new+ntent*this My,ervice#class--%!!break%
PGI Page 29
8/21/2019 Practical Android
30/89
Patel Group of Institutions
SL-MC(650017)/if*v#get+d*-==.#id#button-)
Log#d*2'3 4onlick: sto""ing srvice4-%sto",ervice*new+ntent*this My,ervice#class--%!!break%
//
/
Exercise : 1/Create an application that will have spinner with list of animation names. $nselecting animation name that animation should affect on the images displayedbelow.
XML :
main.xml :
8/21/2019 Practical Android
31/89
Patel Group of Institutions
SL-MC(650017)
~> in this problem we make anim folder to res. Directory and
create an xml file like following:
al0ha.xml :
android:"ivotJ=")0A"
android:duration="?000" !>
scale.xml :
s0in.xml :
8/21/2019 Practical Android
32/89
Patel Group of Institutions
SL-MC(650017) android:"ivotJ=")0A"android:re"eatount="infinite"
!>
translate.xml :
JAVA :
!enActivity.java :
package"gi#Ten%
importandroid#a""#&ctivity%importandroid#os#'undle%importandroid#view#View%importandroid#view#animation#&nimation%import android#view#animation#&nimationEtils%
importandroid#widget#&da"terView%import android#widget#&da"terView#3n+tem,electedListener%importandroid#widget#+mageView%importandroid#widget#,"inner%
publicclassTen&ctivity extends&ctivity implements3n+tem,electedListener) G3verride publicvoidonreate*'undle saved+nstance,tate-
) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% ,"inner s = *,"inner-$indView'y+d*.#id#spinner1-%
s#set3n+tem,electedListener*this-% /
publicvoidon+tem,elected*&da"terView argB View arg6 intarg7longarg8-
)+mageView i = *+mageView-$indView'y+d*.#id#image%iew1-%if*arg8==6-)
&nimation a = &nimationEtils#load'nimation*this.#anim#alpha-%
i#start&nimation*a-%/if*arg8==7-)
PGI Page 32
8/21/2019 Practical Android
33/89
Patel Group of Institutions
SL-MC(650017)&nimation a = &nimationEtils#load'nimation*this
.#anim#rotate-%i#start&nimation*a-%
/if*arg8==8-)
&nimation a = &nimationEtils#load'nimation*this.#anim#scale-%
i#start&nimation*a-%/if*arg8==9-)
&nimation a = &nimationEtils#load'nimation*this.#anim#spin-%
i#start&nimation*a-%/if*arg8==A-)
&nimation a = &nimationEtils#load'nimation*this
.#anim#translate-%i#start&nimation*a-%
//
publicvoidon;othing,elected*&da"terView argB-)
//
PGI Page 33
8/21/2019 Practical Android
34/89
Patel Group of Institutions
SL-MC(650017)
Exercise : 11(nderstanding of (! ,a. Create an (! such that one screen have list of all the types of cars.
b. $n selecting of any car name ne%t screen should show Car details like , name launched date company name images"using gallery# if available show differentcolors in which it is available.
Screen Shot:
PGI Page 34
8/21/2019 Practical Android
35/89
Patel Group of Institutions
SL-MC(650017)
XML :
main.xml :
Main1.xml :
PGI Page 35
8/21/2019 Practical Android
36/89
Patel Group of Institutions
SL-MC(650017)
JAVA :
ElevenActivity.java :
package"gi#1leven%importandroid#a""#&ctivity%importandroid#content#+ntent%importandroid#os#'undle%importandroid#view#View%importandroid#widget#&da"terView%
importandroid#widget#ListView%importandroid#widget#Toast%import android#widget#&da"terView#3n+temlickListener%
publicclass1leven&ctivity extends&ctivity implements3n+temlickListener) ListView lv%
G3verride publicvoidonreate*'undle saved+nstance,tate-
) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% lv=*ListView- $indView'y+d*.#id#l-%
lv#setlickable*true-% lv#set3n+temlickListener*this-% /
publicvoidon+temlick*&da"terView argB View arg6 intarg7longarg8-
)try
)+nteger itn=+nteger#alue5f*arg7-%,tring ext=itn#to,tring*-%+ntent i = new+ntent*thisar+n$o#class-%i#"ut1xtra*4ar0os4 ext-%
start&ctivity*i-%/catch*1xce"tion e-
PGI Page 36
8/21/2019 Practical Android
37/89
Patel Group of Institutions
SL-MC(650017))
Toast#make2e$t*this e#getMessage*-4 3n+temlick4Toast#*324_53-#show*-%
//
/
,arn%o.java
package"gi#1leven%importandroid#a""#&ctivity%importandroid#content#ontext%importandroid#content#+ntent%importandroid#content#res#Ty"ed&rray%importandroid#os#'undle%importandroid#view#View%importandroid#view#Viewrou"%importandroid#widget#'ase&da"ter%importandroid#widget#allery%
importandroid#widget#+mageView%importandroid#widget#TextView%
publicclassar+n$o extends&ctivity)
TextView tv%privateallery gallery%G3verridepublicvoidonreate*'undle saved+nstance,tate-) super#onreate*saved+nstance,tate-% setontentView*.#layout#main1-%
tv=*TextView- $indView'y+d*.#id#t-%
+ntent i=this#get+ntent*-% ,tring str =i#get,tring1xtra*4ar0os4-%
gallery= *allery- $indView'y+d*.#id#e$amplegaller#-% gallery#set&da"ter*new&dd+mg&d"*thisstr--% if*str#e2uals*4B4-- ) tv#setText*4;ame:Maruti ,uCuki PBB44Qn44Launched
Fate:6!8!6RPS44Qn44om"any ;ame:Maruti ,uCuki44Qnolors&vailable:QnhiteQn'lueQn.edQnLight Jellow4-%
/ elseif*str#e2uals*464--
) tv#setText*4;ame:yundai &ccent 1xecutive44Qn44Launched
Fate:6A!6B!7B6B44Qn44om"any ;ame:yundai44Qnolors&vailable:QnrayQn3cean 'lueQnMidnight 'lackQnMaganta 'lue4-%
/ elseif*str#e2uals*474-- ) tv#setText*4;ame:hevrolet 'eat44Qn44Launched
Fate:66!66!7B6644Qn44om"any ;ame:hevrolet44Qnolors&vailable:QnMidnight 'lackQn&maCon reenQn.oyal oldQn,"ort .ed4-%
/ else )
tv#setText*4;o car available4-% //
PGI Page 37
8/21/2019 Practical Android
38/89
Patel Group of Institutions
SL-MC(650017)/class&dd+mg&d" extends'ase&da"ter)
intal+tem'g%privateontext cont%,tring "ositionLast%
private+ntegerK +mgidb= ).#drawable#b1 .#drawable#b.#drawable#b .#drawable#b(/%
private+ntegerK +mgidh= ).#drawable#h1 .#drawable#h.#drawable#h .#drawable#h(/%
private+ntegerK +mgidm= ).#drawable#m1 .#drawable#m.#drawable#m .#drawable#m(/%
public&dd+mg&d"*ontext c,tring "os-)cont= c%"ositionLast="os%Ty"ed&rray ty"&rray =
c#obtain,tyled&ttributes*.#styleable# 3aller#2heme-%
al+tem'g=ty"&rray#get.esource+d*.#styleable# 3aller#2heme_android_galler#7tem>ackground B-%
ty"&rray#recycle*-%/
publicintgetount*-)if*"ositionLast#e2uals*4B4--)
return+mgidm#length%/
elseif*"ositionLast#e2uals*464--)return+mgidh#length%
/elseif*"ositionLast#e2uals*474--)
return+mgidb#length%/else
)return+mgidm#length%
//
public3bHect get+tem*int"osition- )return"osition%/
publiclongget+tem+d*int"osition- )return"osition%/
publicView getView*int"osition View convertView Viewrou" "arent-)+mageView imgView = new+mageView*cont-%if*"ositionLast#e2uals*4B4--
) imgView#set+mage.esource*+mgidmK"osition-%/
PGI Page 38
8/21/2019 Practical Android
39/89
Patel Group of Institutions
SL-MC(650017)elseif*"ositionLast#e2uals*464--)
imgView#set+mage.esource*+mgidhK"osition-%/elseif*"ositionLast#e2uals*474--)
imgView#set+mage.esource*+mgidbK"osition-%/else
)imgView#set+mage.esource*+mgidmK"osition-%
/!! (ixing width 5 height $or image to dis"layimgView#setLayout0arams*newallery#Layout0arams*7BB 7BB--%imgView#set,caleTy"e*+mageView#,caleTy"e# 672_BC-%imgView#set'ackground.esource*al+tem'g-%returnimgView%/
/
Exercise : 12(nderstanding content providers and permissions,a. +ead phonebook contacts using content providers and display in list.
Screen Shot:
PGI Page 39
8/21/2019 Practical Android
40/89
Patel Group of Institutions
SL-MC(650017)
XML :
main.xml :
JAVA :
!elveActivity.java :
package"gi#Twelve%importHava#util#&rrayList%importandroid#a""#&ctivity%importandroid#database#ursor%importandroid#os#'undle%
PGI Page 40
8/21/2019 Practical Android
41/89
Patel Group of Institutions
SL-MC(650017)import android#"rovider#ontactsontract%import android#"rovider#ontactsontract#0honeLooku"%importandroid#util#Log%importandroid#widget#&rray&da"ter%importandroid#widget#ListView%
publicclassTwelve&ctivity extends&ctivity)
private&rrayList list% publicvoidonreate*'undle saved+nstance,tate-
) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% intH=B% ursorc=getontent.esolver*-#2uery*ontactsontract#ontacts# 52*2_,7 nullnullnullnull-%
list= new&rrayList*-% while*c#moveTo;ext*-- ) int nameindex=c#getolumn+ndex*0honeLooku"#;7'C_'9*-% ,tring name=c#get,tring*nameindex-% list#add*name-% Log#d*4ontacts:4name-%
/ ListView l=*ListView-$indView'y+d*.#id#list%iew1-% &rray&da"ter aa=new&rray&da"ter*thisandroid#.#layout#simple_list_item_1list-% l#set&da"ter*aa-% /
/
Exercise : 1+ead messages from the mobile and display it on the screen.
Screen Shot:
PGI Page 41
8/21/2019 Practical Android
42/89
Patel Group of Institutions
SL-MC(650017)
XML :
main.xml :
JAVA :
!hirteenActivity.java :
package"gi#Thirteen%
importandroid#a""#&ctivity%importandroid#database#ursor%
PGI Page 42
8/21/2019 Practical Android
43/89
Patel Group of Institutions
SL-MC(650017)importandroid#gra"hics#olor%importandroid#net#Eri%importandroid#os#'undle%importandroid#widget#TextView%
publicclassThirteen&ctivity extends&ctivity
)
publicvoidonreate*'undle saved+nstance,tate-) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% TextView view = newTextView*this-% Eri uri,M, = Eri#parse*4content:!!sms!inbox4-% ursor c = getontent.esolver*-#2uery*uri,M, null null
nullnull-% ,tring sms = 44% while*c#moveTo;ext*-- )
sms = 4(rom :4 c#get,tring*7- 4 : 4c#get,tring*66-4Qn4%
/ view#setText*sms-% view#set'ackgroundolor*olor#>,*-% view#setTextolor*olor#=472*-% setontentView*view-%/
/
Exercise : 1"Create an application to call specific entered number by user in the &ditTe%t
Screen Shot:
PGI Page 43
8/21/2019 Practical Android
44/89
Patel Group of Institutions
SL-MC(650017)
XML :
main.xml :
PGI Page 44
8/21/2019 Practical Android
45/89
Patel Group of Institutions
SL-MC(650017)
JAVA :
Fo#rteenActivity.java :
package"gi#(ourteen%
importandroid#a""#&ctivity%importandroid#content#+ntent%importandroid#net#Eri%importandroid#os#'undle%importandroid#view#View%importandroid#widget#'utton%importandroid#widget#1ditText%
publicclass(ourteen&ctivity extends&ctivity)
G3verride
publicvoidonreate*'undle saved+nstance,tate-) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% 'utton call = *'utton-$indView'y+d*.#id#btncall-% call#set3nlickListener*newView#3nlickListener*-
) publicvoidonlick*View v-
) 1ditText txt = *1ditText-$indView'y+d*.#id#t$tnumber-% Eri uri=Eri#parse*4tel:4txt#getText*-#to,tring*--%
+ntent intent=new+ntent*+ntent#'275_' uri-%start&ctivity*intent-%
/ /-% /
PGI Page 45
8/21/2019 Practical Android
46/89
Patel Group of Institutions
SL-MC(650017)/
Exercise : 1$Create an application that will create database with table of (ser credential.
Screen Shot:
XML :
PGI Page 46
8/21/2019 Practical Android
47/89
Patel Group of Institutions
SL-MC(650017)main.xml :
JAVA :
Fi%teenActivity.java :
a"ackage "gi#(i$teen%
importandroid#a""#&ctivity%
importandroid#database#ursor%importandroid#database#s2lite#,LiteFatabase%importandroid#gra"hics#olor%importandroid#os#'undle%importandroid#util#Log%importandroid#widget#TextView%
publicclass(i$teen&ctivity extends&ctivity)
G3verridepublicvoidonreate*'undle saved+nstance,tate-)
super#onreate*saved+nstance,tate-%
,LiteFatabase myF'= null%,tring Table;ame = 4myTable4%
,tring Fata=44%
!I reate a Fatabase# I!try)
myF' = this#o"en3rreateFatabase*4Fatabase;ame495;*_7%'2* null-%
!I reate a Table in the Fatabase# I!
myF'#exec,L*4.1&T1 T&'L1 +( ;3T 1O+,T, 4 Table;ame 4 *(ield6 V&.&. (ield7 +;T*8--%4-%!I +nsert data to a TableI!myF'#exec,L*4+;,1.T +;T3 4 Table;ame 4 *(ield6
(ield7-4 4 V&LE1, *NJGGFN 77-%4-%!Iretrieve data $rom database I!ursor c = myF'#rawuery*4,1L1T I (.3M 4 Table;ame
null-%
intolumn6 = c#getolumn+ndex*4(ield64-%intolumn7 = c#getolumn+ndex*4(ield74-%
!! heck i$ our result was valid#
c#moveTo(irst*-%if*c @= null-)
PGI Page 47
8/21/2019 Practical Android
48/89
Patel Group of Institutions
SL-MC(650017)!! Loo" through all .esultsdo) ,tring ;ame = c#get,tring*olumn6-% int&ge = c#get+nt*olumn7-% Fata =Fata ;ame4!4&ge4Qn4%
/while*c#moveTo;ext*--%/TextView tv = newTextView*this-%tv#set'ackgroundolor*olor#>,*-%tv#setTextolor*olor#=472*-%tv#setText*Fata-%setontentView*tv-%
/catch*1xce"tion e-)
Log#e*41rror4 41rror4 e-%/finally
)if*myF' @= null-
myF'#close*-%/
//
3ro0!4.java :
package"gi#(i$teen%
importandroid#a""#&ctivity%importandroid#database#s2lite#,LiteFatabase%
importandroid#os#'undle%importandroid#util#Log%
publicclassFro"Tb extends&ctivity)
G3verridepublicvoidonreate*'undle saved+nstance,tate-)
super#onreate*saved+nstance,tate-%
,LiteFatabase myF'= null%,tring Table;ame = 4myTable4%
!III reate a Fatabase#I I!try)
myF' = this#o"en3rreateFatabase*4Fatabase;ame495;*_7%'2* null-%
myF'#exec,L*4F.30 T&'L1 +( 1O+,T, 4Table;ame4%4-%
/catch*1xce"tion e-)
Log#e*41rror4 41rror4 e-%/finally
PGI Page 48
8/21/2019 Practical Android
49/89
Patel Group of Institutions
SL-MC(650017))
if*myF' @= null-myF'#close*-%
//
/
Exercise : 1&
Create an application to read file from asset folder and copy it in memory card.
Screen Shot:
XML :
s1.xml :
8/21/2019 Practical Android
50/89
Patel Group of Institutions
SL-MC(650017) android:layout_height="fill_parent" android:weight,um="1"android:background="@color/bgcolor">
JAVA :
SixteenActivity.java :
package"gi#,ixteen%importHava#io#(ile%importHava#io#(ile3ut"ut,tream%importHava#io#+31xce"tion%importHava#io#+n"ut,tream%importHava#io#3ut"ut,tream%importandroid#a""#&ctivity%importandroid#content#+ntent%importandroid#os#'undle%importandroid#widget#Toast%
publicclass,ixteen&ctivity extends&ctivity
)
(ile3ut"ut,tream $os%
G3verride publicvoidonreate*'undle saved+nstance,tate-
) super#onreate*saved+nstance,tate-% setontentView*.#layout#s1-%
try)
,tring dest0ath = 4!sdcard!kmn#txt4%(ile $ = new(ile*dest0ath-%if*@$#exists*--)
o"yF'* get'aseontext*-#get&ssets*-#o"en*4$ile#txt4-new(ile3ut"ut,tream*dest0ath--%
/+ntent i = new
+ntent*,ixteen&ctivity#thisscreen6#class-% start&ctivity*i-%
/catch*1xce"tion e-
)
PGI Page 50
8/21/2019 Practical Android
51/89
Patel Group of Institutions
SL-MC(650017)Toast#make2e$t*,ixteen&ctivity#this 4 4e#to,tring*-
Toast#*324_53-#show*-%/
/ publicvoido"yF'*+n"ut,tream in"ut,tream3ut"ut,treamout"ut,tream-throws+31xce"tion
)!!DDDco"y 6U bytes at a timeDDDbyteK bu$$er = newbyteK6B79%intlength%while**length = in"ut,tream#read*bu$$er-- > B-)
out"ut,tream#write*bu$$er B length-%/in"ut,tream#close*-%out"ut,tream#close*-%
//
screen1.java :
package"gi#,ixteen%
importHava#io#Fata+n"ut,tream%importHava#io#(ile%importHava#io#(ile+n"ut,tream%importandroid#a""#&ctivity%importandroid#os#'undle%importandroid#os#1nvironment%importandroid#widget#TextView%importandroid#widget#Toast%
publicclassscreen6 extends&ctivity)
publicvoidonreate*'undle b-)
super#onreate*b-%setontentView*.#layout#s1-%try)
(ile $ileFir = 1nvironment#get*$ternaltorage;irector#*-% (ile directory = new (ile*$ileFir#get&bsolute0ath*--% (ile $ile = new(ile*directory 4kmn#txt4-% (ile+n"ut,tream $is = new(ile+n"ut,tream*$ile-%
,tring str = null%,tring'u$$er sbu$$er = new,tring'u$$er*-%Fata+n"ut,tream dataio = newFata+n"ut,tream*$is-%while**str = dataio#readLine*-- @= null-)
sbu$$er#a""end*str 4Qn4-%/TextView txt=*TextView-$indView'y+d*.#id#show2$t-%txt#setText*sbu$$er-%
/catch*1xce"tion e-)
Toast#make2e$t*this 4 4e#to,tring*-
Toast#*324_53-#show*-%/
/
PGI Page 51
8/21/2019 Practical Android
52/89
Patel Group of Institutions
SL-MC(650017)/
Exercise : 1'Create an application that will play a media file from the memory card.
Screen Shot:
XML :
main.xml :
PGI Page 52
8/21/2019 Practical Android
53/89
Patel Group of Institutions
SL-MC(650017)
) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% 'utton start=*'utton-$indView'y+d*.#id#button1-% 'utton sto"=*'utton-$indView'y+d*.#id#button-% get,ystem,ervice*ontext#',;75_*%7*-% start#set3nlickListener*newView#3nlickListener*- )
publicvoidonlick*View argB-)
try
)"layer=null%"layer=newMedia0layer*-%,tring
audio(ile0ath=4!sdcard!braincandy#m"84%"layer#setFata,ource*audio(ile0ath-%"layer#"re"are*-%"layer#start*-%
/catch*1xce"tion e-
PGI Page 53
8/21/2019 Practical Android
54/89
Patel Group of Institutions
SL-MC(650017))
Toast#make2e$t*,eventeen&ctivity#this44eToast#*324_53-#show*-%
//
/-% sto"#set3nlickListener*newView#3nlickListener*-
)publicvoidonlick*View argB-
) "layer#sto"*-%
//-%
//
56ste0 to add a m0 %ile to sdcard
17)oto the ddms
27clic8 on 0#sh 4#tton
7and select the )iven m0 %ile.
Exercise : 1(
Create an application to make !nsert update 'elete and retrieve operation onthe database.
Main.java:
packagecom#lebreemelow#$irsta""%
importandroid#os#'undle%
importandroid#a""#&ctivity%
importandroid#widget#'utton%
importandroid#widget#+mageView%
importandroid#view#View%
importandroid#content#+ntent%
importandroid#view#Menu%
publicclassMain&ctivity extends&ctivity )
private'utton b%
private'utton b6%
PGI Page 54
8/21/2019 Practical Android
55/89
Patel Group of Institutions
SL-MC(650017)G3verride
publicvoidonreate*'undle saved+nstance,tate- )
super#onreate*saved+nstance,tate-%
setontentView*.#layout#actiit#_main-%
b=*'utton- $indView'y+d*.#id#button1-%
b#set3nlickListener*newView#3nlickListener*- )
publicvoidonlick*View argB- )
start&ctivity*new+ntent*Main&ctivity#this+nsert#class--%
!!setontentView*.#layout#second-%
/
/-%
b6=*'utton- $indView'y+d*.#id#button-%
b6#set3nlickListener*newView#3nlickListener*- )
publicvoidonlick*View argB- )
!! TODO&utoDgenerated method stub
+ntent i=new+ntent*Main&ctivity#this,how#class-%
start&ctivity*i-%
/
/-%
/
/
nsert.java:
packagecom#lebreemelow#$irsta""%
importandroid#a""#&ctivity%
importandroid#content#ontentValues%
importandroid#database#s2lite#,LiteFatabase%
importandroid#os#'undle%
importandroid#view#View%
PGI Page 55
8/21/2019 Practical Android
56/89
Patel Group of Institutions
SL-MC(650017)importandroid#widget#'utton%
importandroid#widget#1ditText%
importandroid#widget#Toast%
"
publicclass+nsert extends&ctivity )
private1ditText name%
private1ditText mno%
private'utton submit%
G3verride
publicvoidonreate*'undle saved+nstance,tate- )
super#onreate*saved+nstance,tate-%
setontentView*.#layout#second-%
submit=*'utton- $indView'y+d*.#id#button1-%
name=*1ditText- $indView'y+d*.#id#edit2e$t1-%
mno=*1ditText- $indView'y+d*.#id#edit2e$t-%
submit#set3nlickListener*newView#3nlickListener*- )
publicvoidonlick*View argB- )
,LiteFatabasedb=o"en3rreateFatabase*4Mydb#db495;*_7%'2*null-%
db#exec,L*4create table i$ not exists Mytable*"namevarchar"mo varchar-%4-%
!! TODO&utoDgenerated method stub
,tring n=name#getText*-#to,tring*-%
,tring m=mno#getText*-#to,tring*-%
ontentValues cv=newontentValues*-%
cv#"ut*4"name4n-%
cv#"ut*4"mo4m-%
db#insert*4Mytable4nullcv-%
PGI Page 56
8/21/2019 Practical Android
57/89
Patel Group of Institutions
SL-MC(650017)!!db#close*-%
name#setText*44-%
mno#setText*44-%
Toast#make2e$t*get&""licationontext*-4recodrdsave4Toast#*324_53-#show*-%
/
/-%
/
/
!how.java:
"ackage com#lebreemelow#$irsta""%
im"ort Hava#util#&rrayList%
im"ort android#a""#&ctivity%
im"ort android#content#+ntent%
im"ort android#database#ursor%
im"ort android#database#s2lite#,LiteFatabase%
!!im"ort android#database#ursor%
!!im"ort android#database#s2lite#,LiteFatabase%
im"ort android#os#'undle%
im"ort android#view#ontextMenu%
im"ort android#view#Menu+tem%
im"ort android#view#View%
im"ort android#view#ontextMenu#ontextMenu+n$o%
im"ort android#widget#&da"terView%
im"ort android#widget#&da"terView#&da"terontextMenu+n$o%
im"ort android#widget#&rray&da"ter%
im"ort android#widget#ListView%
im"ort android#widget#Toast%
"ublic class ,how extends &ctivity )
"rivate ListView l%
PGI Page 57
8/21/2019 Practical Android
58/89
Patel Group of Institutions
SL-MC(650017)"rivate &rrayList items=new &rrayList*-%
,LiteFatabase db%
G3verride
"ublic void onreate*'undle saved+nstance,tate- )
su"er#onreate*saved+nstance,tate-%
setontentView*.#layout#third-%
db=o"en3rreateFatabase*4Mydb#db4M3F1_0.+V&T1null-%
l=*ListView- $indView'y+d*.#id#listView6-%
ursor c=db#rawuery*4select I $rom Mytable4null-%
while*c#moveTo;ext*--
)
,tring n=c#get,tring*B-%
,tring m=c#get,tring*6-%
!!items#add*n4 Qn 4m-%
items#add*n-%
/
l#set&da"ter*new&rray&da"ter*thisandroid#.#layout#sim"le_list_item_6
items--%
register(orontextMenu*l-%
/
"ublic void onreateontextMenu*ontextMenu menu View vontextMenu+n$o mi-
)
su"er#onreateontextMenu*menu vmi-%
i$*v#get+d*-==.#id#listView6-
)
menu#seteaderTitle*4,elect 3"tion4-%
PGI Page 58
8/21/2019 Practical Android
59/89
Patel Group of Institutions
SL-MC(650017)menu#add*B 6 menu#;3;14.emove +tem4-%
menu#add*B7menu#;3;141dit +tem4-%
/
/
"ublic boolean onontext+tem,elected*Menu+tem item-
)
int itemid=item#get+tem+d*-%
i$*itemid==6-
)
&da"terView#&da"terontextMenu+n$o menuin$o%
menuin$o=*&da"terontextMenu+n$o- item#getMenu+n$o*-%
int index_id=menuin$o#"osition%
,tring user_id=items#get*index_id-%
db#exec,L*4delete $rom Mytable where"name=N4user_id4N4-%
Toast#makeText*thisuser_idToast#L1;T_L3;-#show*-%
/
else i$*itemid==7-
)
&da"terView#&da"terontextMenu+n$o menuin$o%
menuin$o=*&da"terontextMenu+n$o- item#getMenu+n$o*-%
int index_id=menuin$o#"osition%
,tring user_id=items#get*index_id-%
+ntent i=new +ntent*Third#this(ourth#class-%
start&ctivity*i-%
Toast#makeText*this41ditFata4Toast#L1;T_L3;-#show*-%
PGI Page 59
8/21/2019 Practical Android
60/89
Patel Group of Institutions
SL-MC(650017)/
return su"er#onontext+tem,elected*item-%
/
/
"dit.java:
packagecom#lebreemelow#$irsta""%
importandroid#a""#&ctivity%
importandroid#content#ontentValues%
importandroid#database#ursor%
importandroid#database#s2lite#,LiteFatabase%
importandroid#os#'undle%
importandroid#view#View%
importandroid#widget#'utton%
importandroid#widget#1ditText%
importandroid#widget#Toast%
publicclass1dit extends&ctivity )
private1ditText name%
private1ditText mno%
private'utton bedit%
,tring user_id%
G3verride
publicvoidonreate*'undle saved+nstance,tate- )
super#onreate*saved+nstance,tate-%
setontentView*.#layout#fourth-%
name=*1ditText- $indView'y+d*.#id#edit2e$t-%
mno=*1ditText- $indView'y+d*.#id#edit2e$t(-%
bedit=*'utton- $indView'y+d*.#id#button(-%
final,LiteFatabasedb=o"en3rreateFatabase*4Mydb#db495;*_7%'2*null-%
PGI Page 60
8/21/2019 Practical Android
61/89
Patel Group of Institutions
SL-MC(650017) ursor c=db#2uery*4Mytable4null4"name=?4new,tringK)4aHay4/null null null-%
if*c@=null-
)
c#moveToLast*-%
/
name#setText*c#get,tring*B--%
mno#setText*c#get,tring*6--%
bedit#set3nlickListener*newView#3nlickListener*- )
publicvoidonlick*View argB- )
ontentValues cv=newontentValues*-%
cv#"ut*4"name4name#getText*-#to,tring*--%
cv#"ut*4"mo4mno#getText*-#to,tring*--%
db#u"date*4Mytable4cv4"name=?4new,tringK)4aHay4/-%
Toast#make2e$t*(ourth#this4success$ullyu"date4Toast#*324_53-#show*-%
!! TODO&utoDgenerated method stub
/
/-%
/
/
Main#xml:
8/21/2019 Practical Android
62/89
Patel Group of Institutions
SL-MC(650017) android:id="@!id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_align0arentLe$t="true"
android:layout_align0arentTo"="true"
android:layout_marginLe$t="(dp"
android:layout_marginTo"="1(dp"
android:background="@drawable/rect"
android:text="7nsert data"!>
8/21/2019 Practical Android
63/89
Patel Group of Institutions
SL-MC(650017) android:text="this is the second actiit#"!>
8/21/2019 Practical Android
64/89
Patel Group of Institutions
SL-MC(650017) android:id="@!id/list%iew1"
android:layout_width="match_parent"
android:layout_height="wrap_content">
#pdate.xml:
PGI Page 64
8/21/2019 Practical Android
65/89
Patel Group of Institutions
SL-MC(650017)
8/21/2019 Practical Android
66/89
Patel Group of Institutions
SL-MC(650017)
Main.java:
packagecom#store#$ilestorage%
importHava#io#(ile%
importHava#io#(ile+n"ut,tream%
importHava#io#(ile;ot(ound1xce"tion%
importHava#io#(ile3ut"ut,tream%
importHava#io#+31xce"tion%
importandroid#os#'undle%
importandroid#os#1nvironment%
importandroid#a""#&ctivity%
importandroid#view#Menu%
importandroid#view#View%
importandroid#widget#'utton%
importandroid#widget#1ditText%
importandroid#widget#TextView%
publicclassMain extends&ctivity )
publicTextView t%
private1ditText ed%
private'utton b%
public,tring in"ut%
G3verride
publicvoidonreate*'undle saved+nstance,tate- )
super#onreate*saved+nstance,tate-%
setontentView*.#layout#main-%
t=*TextView- $indView'y+d*.#id#te$t%iew1-%
ed=*1ditText- $indView'y+d*.#id#edit2e$t1-%
b=*'utton- $indView'y+d*.#id#button1-%
PGI Page 66
8/21/2019 Practical Android
67/89
Patel Group of Institutions
SL-MC(650017) b#set3nlickListener*newView#3nlickListener*- )
G3verride
publicvoidonlick*View argB- )
(ile sdcard=1nvironment#get*$ternaltorage;irector#*-%
if*sdcard#exists*- 55 sdcard#canrite*--
)
(ile udir=new(ile*sdcard#get&bsolute0ath*-4!android,tring(ile4-%
udir#mkdir*-%
if*udir#exists*- 55 udir#canrite*--
)
(ile $ile=new(ile*udir#get&bsolute0ath*-4!my,tring#txt4-%
try
)
$ile#create;ew(ile*-%
/
catch*+31xce"tion e-
)
e#"rint,tackTrace*-%
/
if*$ile#exists*- 55 $ile#canrite*--
)
(ile3ut"ut,tream $os=null%
try
)
$os=new(ile3ut"ut,tream*$ile-%
in"ut=ed#getText*-#to,tring*-%
$os#write*in"ut#get'ytes*--%
/
catch*(ile;ot(ound1xce"tion e-
)
PGI Page 67
8/21/2019 Practical Android
68/89
Patel Group of Institutions
SL-MC(650017)e#"rint,tackTrace*-%
/
catch*+31xce"tion e-
)
e#"rint,tackTrace*-%
/
finally
)
if*$os@=null-
)
try
)
$os#$lush*-%
$os#close*-%
/
catch*+31xce"tion e-
)
e#"rint,tackTrace*-%
/
/
/
/
else
)
t#setText*4unable to write4-%
/
/
else
)
t#setText*4unable to create $ile4-%
/
PGI Page 68
8/21/2019 Practical Android
69/89
Patel Group of Institutions
SL-MC(650017)/
else
)
t#setText*4unable to create dir4-%
/
(ile r$ile=new(ile*4!sdcard!android,tring(ile!my,tring#txt4 -%
if*r$ile#exists*- 55 r$ile#can.ead*--
)
(ile+n"ut,tream $is=null%
try
)
$is=new(ile+n"ut,tream*r$ile-%
byteK readers=newbyteK$is#available*-%
while*$is#read*readers-@=D6-
)
/
t#setText*new,tring*readers--%
/
catch*(ile;ot(ound1xce"tion e-
)
e#"rint,tackTrace*-%
/
catch*+31xce"tion e-
)
e#"rint,tackTrace*-%
/
finally
)
if*$is@=null-
)
try
)
$is#close*-%
PGI Page 69
8/21/2019 Practical Android
70/89
Patel Group of Institutions
SL-MC(650017)/
catch*+31xce"tion e-
)
e#"rint,tackTrace*-%
/
/
/
/
else
)
t#setText*4unable to read $ile4-%
/
/
/-%
/
G3verride
publicbooleanonreate3"tionsMenu*Menu menu- )
getMenu+n$later*-#in$late*.#menu#main menu-%
returntrue%
/
/
Main.xml
8/21/2019 Practical Android
71/89
Patel Group of Institutions
SL-MC(650017) android:id="@!id/edit2e$t1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10">
8/21/2019 Practical Android
72/89
Patel Group of Institutions
SL-MC(650017)
Exercise : 2/Create an application to draw line on the screen as user drag his finger.
Screen Shot:
PGI Page 72
8/21/2019 Practical Android
73/89
Patel Group of Institutions
SL-MC(650017)
XML :
main.xml :
JAVA :
!entyActivity.java :
package"gi#Twenty%importandroid#a""#&ctivity%importandroid#os#'undle%
PGI Page 73
8/21/2019 Practical Android
74/89
Patel Group of Institutions
SL-MC(650017)publicclassTwenty&ctivity extends&ctivity)
publicvoidonreate*'undle saved+nstance,tate-)
super#onreate*saved+nstance,tate-%super#onreate*saved+nstance,tate-%
setontentView*new1x"loreTouch1vent*this null--%/
/
Ex0lore!o#chEvent.java :
package"gi#Twenty%importandroid#content#ontext%importandroid#gra"hics#anvas%importandroid#gra"hics#olor%importandroid#gra"hics#0aint%importandroid#gra"hics#0ath%importandroid#util#&ttribute,et%importandroid#view#Motion1vent%importandroid#view#View%publicclass1x"loreTouch1vent extendsView)
private0aint "aint= new0aint*-%private0ath "ath= new0ath*-%public1x"loreTouch1vent*ontext context &ttribute,et attrs-)
super*context attrs-%"aint#set&nti&lias*true-%"aint#set,trokeidth*$-%"aint#setolor*olor#=472*-%
"aint#set,tyle*0aint#,tyle#25E*-%"aint#set,trokeWoin*0aint#Woin#5,;-%
/protectedvoidonFraw*anvas canvas-)
canvas#drawolor*olor#>,*-%canvas#draw0ath*"ath "aint-%
/publicbooleanonTouch1vent*Motion1vent event-)
floateventO = event#getO*-%floateventJ = event#getJ*-%
switch*event#get&ction*--)
caseMotion1vent#'275_;5=:"ath#moveTo*eventO eventJ-%returntrue%
caseMotion1vent#'275_95%*:"ath#lineTo*eventO eventJ-%break%
caseMotion1vent#'275_,:!! nothing to dobreak%
default:returnfalse%
/!! ,chedules a re"aint#
PGI Page 74
8/21/2019 Practical Android
75/89
Patel Group of Institutions
SL-MC(650017)invalidate*-%returntrue%
//
Exercise : 21
Create an application to send message between two emulators.Screen Shot:
Main$ctivity.java
packagecom#"gi#smsbook%
importandroid#os#'undle%
importandroid#a""#&ctivity%
importandroid#a""#0ending+ntent%
import android#content#'roadcast.eceiver%
importandroid#content#ontext%
importandroid#content#+ntent%
importandroid#content#+ntent(ilter%
importandroid#tele"hony#,msManager%
importandroid#tele"hony#,msMessage%
PGI Page 75
8/21/2019 Practical Android
76/89
Patel Group of Institutions
SL-MC(650017)importandroid#util#Log%
importandroid#view#Menu%
importandroid#view#View%
importandroid#widget#'utton%
importandroid#widget#1ditText%
importandroid#widget#TextView%
publicclassMain&ctivity extends&ctivity )
'roadcast.eceiver rcvMsg,ent=null%
'roadcast.eceiver rcvMsg.ecei"t=null%
'roadcast.eceiver rcv+ncoming=null%
G3verride
publicvoidonreate*'undle saved+nstance,tate- )
super#onreate*saved+nstance,tate-%
setontentView*.#layout#actiit#_main-%
final1ditText message=*1ditText- $indView'y+d*.#id#edit2e$t-%
final1ditText number=*1ditText- $indView'y+d*.#id#edit2e$t1-%
final,msManager sms=,msManager#get;efault*-%
+ntent msg,ent=new+ntent*4&T+3;_M,_,1;T4-%
+ntent msg.ecei"t=new+ntent*4&T+3;_M,_.11+0T4-%
final0ending+ntent "msg,ent=0ending+ntent#get>roadcast*this
Bmsg,entB-%
final0ending+ntent "msg.ecei"t=0ending+ntent#get>roadcast*this
Bmsg.ecei"tB-%
'utton sent,ms=*'utton- $indView'y+d*.#id#button1-%
sent,ms#set3nlickListener*newView#3nlickListener*- )
G3verride
publicvoidonlick*View argB- )
,tring destination=number#getText*-#to,tring*-%
,tring msg=message#getText*-#to,tring*-%
sms#sendTextMessage*destination nullmsg"msg,ent"msg.ecei"t-%
PGI Page 76
8/21/2019 Practical Android
77/89
Patel Group of Institutions
SL-MC(650017)!! TODO&utoDgenerated method stub
if*rcvMsg,ent@=null-
)
unregister.eceiver*rcvMsg,ent-%
rcvMsg,ent=null%
/
rcvMsg,ent=new'roadcast.eceiver*- )
G3verride
publicvoidon.eceive*ontext argB +ntentarg6- )
!! TODO&utoDgenerated method stub
intresult=get.esultode*-%
if*result@=&ctivity#*,2_5E-
)
Log#e*4tele"hony44sms send$ailed=4result-%
"msg.ecei"t#cancel*-%
/
else
)
Log#i*4tele"hony44sms messgesent###4-%
message#setText*44-%
/
/
/%
register.eceiver*rcvMsg,entnew+ntent(ilter*4&T+3;_M,_,1;T4--%
/
/-%
PGI Page 77
8/21/2019 Practical Android
78/89
Patel Group of Institutions
SL-MC(650017) finalTextView rmsg=*TextView- $indView'y+d*.#id#te$t%iew1-%
rcv+ncoming=new'roadcast.eceiver*- )
G3verride
publicvoidon.eceive*ontext argB +ntent intent- )
!! TODO&utoDgenerated method stub
Log#i*4tele"hony44sms received4-%
'undle data=intent#get1xtras*-%
if*data@=null-
)
3bHect "dusK=*3bHectK- data#get*4"dus4-%
,tring message=4;ew Message:Qn4%
,tring sender=null%
for*3bHect "du : "dus-
)
,msMessage"art=,msMessage#create6romdu**byteK-"du-%
message="art#getFis"layMessage'ody*-%
if*sender==null-
)
sender="art#getFis"lay3riginating&ddress*-%
/
/
rmsg#setText*message4$romQn4 sender-%
number#setText*sender-%
/
/
/%
register.eceiver*rcv+ncoming new+ntent(ilter*4android#"rovider#Tele"hony#,M,_.11+V1F4 --%
/
PGI Page 78
8/21/2019 Practical Android
79/89
Patel Group of Institutions
SL-MC(650017)
G3verride
publicbooleanonreate3"tionsMenu*Menu menu- )
getMenu+n$later*-#in$late*.#menu#actiit#_main menu-%
returntrue%
/
/
Main.xml:
PGI Page 79
8/21/2019 Practical Android
80/89
Patel Group of Institutions
SL-MC(650017)
8/21/2019 Practical Android
81/89
Patel Group of Institutions
SL-MC(650017) android:label="@string/title_actiit#_main">
Ste0 to ,reat to em#lator and send sms.
17)oto indos96Android S3 and AV3 Man)aer.
27creat to em#lator and )ive the di%%erent name.
7start em#lator 4y clic8in) start 4#tton
7no enter the em#lator n#m4er to 0hone n#m4er and send it.
ote:9 see the )ive *#t;#t ma)e..
Enjoy.........
Exercise : 22Create an application to take picture using native application.
Screen Shot:
PGI Page 81
8/21/2019 Practical Android
82/89
Patel Group of Institutions
SL-MC(650017)
XML :
main.xml :
JAVA :
!enty!oActivity.java :
package"gi#TwentyTwo%
importHava#io#(ile%
PGI Page 82
8/21/2019 Practical Android
83/89
Patel Group of Institutions
SL-MC(650017)importandroid#a""#&ctivity%importandroid#content#+ntent%importandroid#net#Eri%importandroid#os#'undle%importandroid#os#1nvironment%importandroid#"rovider#Media,tore%
publicclassTwentyTwo&ctivity extends&ctivity) ,tring "ath%
G3verride publicvoidonreate*'undle saved+nstance,tate-
) super#onreate*saved+nstance,tate-% setontentView*.#layout#main-% "ath= 1nvironment#get*$ternaltorage;irector#*- (ile#separator4make_machine_exam"le#H"g4% (ile $ile = new(ile* "ath-% Eri out"ut(ileEri = Eri#from6ile* $ile -%
+ntent intent = new+ntent*android#"rovider#Media,tore# '275_79'3*_'2,*-% intent#"ut1xtra* Media,tore#*B2'_5,2,2 out"ut(ileEri -%
start&ctivity(or.esult* intent B -%
//
Exercise : 2Create an application to pick up any image from the native application gallery anddisplay it on the screen.
Main.xml:
Manifest.xml:
PGI Page 83
8/21/2019 Practical Android
84/89
Patel Group of Institutions
SL-MC(650017)
Main$ctivity.java:
packagecom#imgmry#imagememoery%
importandroid#net#Eri%
PGI Page 84
8/21/2019 Practical Android
85/89
Patel Group of Institutions
SL-MC(650017)importandroid#os#'undle%
importandroid#"rovider#Media,tore%
importandroid#a""#&ctivity%
importandroid#content#ontext%
importandroid#database#ursor%
importandroid#view#Menu%
importandroid#view#View%
importandroid#view#Viewrou"%
importandroid#widget#'ase&da"ter%
importandroid#widget#ridView%
importandroid#widget#+mageView%
publicclassMain&ctivity extends&ctivity )
privateursor cursor%
privateridView sdcardimg%
privateintcindex%
G3verride
publicvoidonreate*'undle saved+nstance,tate- )
super#onreate*saved+nstance,tate-%
setontentView*.#layout#actiit#_main-%
,tring "roHectionK=)Media,tore#+mages#Thumbnails#_7;/%
cursor=this#getontent.esolver*-#2uery*Media,tore#+mages#Media# *B2*'_52*2_,7nullnullnullnull-%
startManagingursor*cursor-%
cindex=cursor#getolumn+ndex3rThrow*Media,tore#+mages#Thumbnails#_7;-%
sdcardimg=*ridView- $indView'y+d*.#id#grid%iew1-%
sdcardimg#set&da"ter*new+mage&da"ter*this--%
/
privateclass+mage&da"ter extends'ase&da"ter
)
privateontext context%
public+mage&da"ter*ontext c-
PGI Page 85
8/21/2019 Practical Android
86/89
Patel Group of Institutions
SL-MC(650017) )
context=c%
/
G3verride
publicintgetount*- )
!! TODO&utoDgenerated method stub
returncursor#getount*-%
/
G3verride
public3bHect get+tem*int"osition- )
!! TODO&utoDgenerated method stub
return"osition%
/
G3verride
publiclongget+tem+d*int"osition- )
!! TODO&utoDgenerated method stub
return"osition%
/
G3verride
publicView getView*int"osition View convertView Viewrou""arent- )
+mageView "icview%
if*convertView==null-
)
"icview=new+mageView*context-%
cursor#moveTo0osition*"osition-%
intimgid=cursor#get+nt*cindex-%
"icview#set+mageE.+*Eri#with'ppendedath*Media,tore#+mages#Thumbnails# *B2*'_52*2_,744imgid--%
"icview#set,caleTy"e*+mageView#,caleTy"e# 672_*2*-%
"icview#set0adding*PPPP-%
!!"icview#setLayout0arams*new ridView#-
PGI Page 86
8/21/2019 Practical Android
87/89
Patel Group of Institutions
SL-MC(650017)
/
else
)
"icview=*+mageView- convertView%
/
!! TODO&utoDgenerated method stub
return"icview%
/
/
/
Ste0 !o store ima)es on sdcard and scannin) in to the em#lator.
17clic8 on 0#sh on %ile onto the device 4#tton
27no select the iam)e an #0load it
7)oto the
8/21/2019 Practical Android
88/89
Patel Group of Institutions
SL-MC(650017)android:layout_width="fill_parent"
android:layout_height="fill_parent"xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="ertical"android:gravity="center"android:"adding="10p$"android:background="@color/bgcolor">
JAVA :
!entyFo#rActivity.java :
packagecom#"gi#Twenty(our%importandroid#net#Eri%importandroid#os#'undle%importandroid#a""#&ctivity%importandroid#content#+ntent%importandroid#view#Menu%importandroid#webkit#ebView%
publicclassTwenty(our&ctivity extends&ctivity) G3verride
publicvoidonreate*'undle saved+nstance,tate-)
super#onreate*saved+nstance,tate-%
setontentView*.#layout#main-%+ntent brower+ntent=new+ntent*+ntent#'275_%7*=Eri#parse*4htt":!!www#google#co#in4--% start&ctivity*brower+ntent-%
//
Manifest.xml:
PGI Page 88
8/21/2019 Practical Android
89/89
Patel Group of Institutions
SL-MC(650017)