giao trinh 2014

Upload: tester-vn

Post on 21-Feb-2018

244 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/24/2019 Giao Trinh 2014

    1/174

    Trang 0

    GII THIU H IUHNH

    ANDROID

    Tp ti liu tham kho dnh cho sinh vin chuyn ngnh in-in t, in tvin thng, t !ng h"a

    Ths# $guyn %&n 'ip

    Bn nhp s 1()*)(+

  • 7/24/2019 Giao Trinh 2014

    2/174

    Gii Thiu

    'in ti, cng ngh thi.t di !ng thng minh /0ma1t 2hon3, 245, Ta6l3 27 89 ngycng ph:t t1i;n mnh, cn c?ng c@a c:c thi.t 6A ngy cng BCc c:c nh sn Dun 6Oo hYa, th= lp t1=nh di !ng hin ang lm!t mnh n l tnghin c?u# 4o ", vic ^y mnh cng t:c t=m hi;u, nghin c?u, 6_ sung n!i dung dy v h]c` c:c t1BPng i h]c vL h iLu hnh, c:ch th?c to v ph:t t1i;n ?ng dHng cho h iLu hnhc@a c:c thi.t 6A di !ng, l c>n thi.t cho lnh vc cng ngh ph>n mLm ang ph:t t1i;n c@anBQc ta#

    ThPi gian g>n Ey, n_i 6t v ph:t t1i;n u tin; to cho nLn p t1=nh di !ng c@a ngBPi %it c

  • 7/24/2019 Giao Trinh 2014

    3/174

    Chng 1

    Lch s pht trin v ng dng ca andrid1!1 Gii thiu v" #ch s pht trin ca thi$t % di &'ng

    $gy +( th:ng n&m +x BCc coi l mbc son :nh du tin l 5l3Dand31 j1aham K3ll# 7hi.c m:y th sI c" th; t1uyLn BCcgi]ng n"i ny O m` 1a m!t k{ nguyn ph:t t1i;n mQi t1ong lAch s thng tin lin lc, thay th.cho in tn# $&m +qx, chi.c in thoi BCc coi l |di !ng| >u tin t1=nh lng vQi tn g]iCarr( )hn*, 1

  • 7/24/2019 Giao Trinh 2014

    4/174

    '=nh )#)R Uoto1ola 4yna Tac-.ia 1/11 l in thoi j0U/jlo6al 0yst3m }o1 Uo6il3 7ommunications 9 sn Duu tin# $" BCc 1a m~t vo ngy +( th:ng ++ n&m +qq)# in thoi c" phin 6nmu 3n duy nhu tin tch hCp Sap cho phNp t1uy cp int31n3t#

    Tng Du

  • 7/24/2019 Giao Trinh 2014

    5/174

    1!; +'t s< h &i"u hnh tr=n thi$t % di &'ng v &in th>i th?ng inh

    $&m +qqR ' iLu hnh 2(%ianlng danh m!t thPiR %o s:ng ngy ) th:ng x n&m+qq, 2sion 0o}ta13 O BCc _i tn thnh 0ym6ian td#, m!t cng ty lin doanh lQn giJa2sion v c:c nh sn DunmLm t 6n ngoi v cYn kh: nhiLu hn ch.#

    Th:ng +(*)((R $okia giQi thiu in thoi chuyn chIi gam3 $-jag3 # |jam3 th@ lngdanh|, nhBng 1

  • 7/24/2019 Giao Trinh 2014

    6/174

    $&m )(+(, Touch q(( BCc giQi thiu vs mn h=nh cm ?ng ,) inch /x(D(9, cam31a#( /cl kNm9#

    $&m )(+, KK +(, mn h=nh #) inch, +#)( D x piD3l, 7am31a #(, cpu ) +# dual,am ) jK, 6! nhQ t1ong +xjh# +( :nh d

  • 7/24/2019 Giao Trinh 2014

    7/174

    '=nh )# R jiQi thiu vL h iLu hnh 5nd1oid

    5nd1oid l h iLu hnh cho c:c thi.t 6A c>m tay da t1n li inuD do cng ty 5nd1oid Vnc/ 7ali}o1nia, U9 thi.t k.# 7ng ty ny sau " BCc joogl3 mua li vo n&m )(( v 6~t tayDEy dng 5nd1oid 2lat}o1m

    5nd1oid chnh th?c gia nhp in minh thi.t 6A c>m tay mO ngu\n m` /W'59 g\m c:c igia t1ong ngnh vin thng v thi.t 6A c>m tay nhB 'T7, j, 0amsung, T-Uo6il3,###

    AindBs phn* 4

    Sindos 2hon3 l m!t h iLu hnh di !ng BCc ph:t t1i;n 6`i Uic1oso}t, v l s k.tha ; 6`i nLn tng Sindos Uo6il3# $" 1a m~t ti chEu u, 0ingapo13 v c vo ngy )+Th:ng UBPi n&m )(+(, v ti U v 7anada vo ngy ( Th:ng UBPi U!t n&m )(+( , vQichEu c" th; t1ong n&m )(++#%Qi Sindos 2hon3 , Uic1oso}t cung c

    n c?ng m n" chy t1n nLn tng ny#

    Trang 6

    http://en.wikipedia.org/wiki/Metro_Design_Languagehttp://en.wikipedia.org/wiki/Metro_Design_Language
  • 7/24/2019 Giao Trinh 2014

    8/174

    Chng ;

    Tng Duan v" h &i"u hnh 3ndrid;!1 3ndrid # gE F

    3ndridl m!t h iLu hnh dnh cho thi.t 6A di !ng nhB in thoi, m:y tnh 6ng vn3t6ooks# 5nd1oid BCc ph:t t1i;n 6`i joogl3, da t1n nLn tng inuD k31n3l v c:c ph>nmLm ngu\n m`# Kan >u n" BCc ph:t t1i;n 6`i 5nd1oid Vnc /sau " BCc joogl3 mua li9 vg>n Ey n" t1` thnh m!t t1ong nhJng ph>n mLm ?ng >u c@a lin minh W'5 /Wp3n 'ands3t5llianc3 vQi khong thnh vin 6ao g\m c nh sn Duu l joogl39# 5ndo1id BCc ph:t t1i;n nhm cnh t1anh vQi c:c hiLu hnh di !ng kh:c nhB iW0 /5ppl39, KlackK311y W0, Sindos Uo6il3 /Uic1oso}t9,0ym6ian /$okia9, 0amsung /Kada9, S36W0 /2alm9###

    3ndridc" m!t c!ng \ng ph:t t1i;n ?ng dHng 1n mLm, 6~n tin cho c:c nh mng 1ng h] snsng hCp t:c vQi c:c c

    m tay m`/Wp3n 'ands3t 5llianc39, m!thip h!i 6ao g\m nhiLu cng ty t1ong " c" T3Das Vnst1um3nts,Tp on K1oadcom, joogl3,

    'T7, Vnt3l, j, Tp on Ua1v3ll T3chnology, Uoto1ola, $vidia, ualcomm, 0amsungl3ct1onics, 0p1int $3Dt3lv T-Uo6il3BCc thnh lp vQi mHc ch ph:t t1i;n c:ctiu chu^nm`cho thi.t 6A di !ng#7fng ngy, 5nd1oid cMng BCc 1a m~t vQi vai t1Y l sn ph^m >u tinc@a in minh, m!t nLn tng thi.t 6A di !ng BCc DEy dng t1n nhEn inuDphin 6n)#x# 7hi.c in thoi chy 5nd1oid >u tin BCc 6:n 1a l 'T7 413am,ph:t hnh ngy ))th:ng +( n&m )((# Ki;u t1Bng c@a h iLu hnh 5nd1oid mQi l m!t con 16bt mu Danh l:cEy do hon thi.t k. V1ina Klok ti 7ali}o1nia vF#

    T n&m )((, 5nd1oid O t1i ua nhiLu l>n cp nht; d>n d>n ci ti.n h iLu hnh, 6_sung c:c tnh n&ng mQi v sa c:c li t1ong nhJng l>n ph:t hnh t1BQc# Ui 6n nEng c

    n lBCt th3o th? t 6ng chJ c:i, th3o tn c@a m!t m"n &n t1:ng ming v dH nhB phin

    6n +# Cupcake,sau " ti.p nbi 6ng phin 6n +#xDonut/6:nh vYng9# 2hin 6n mQi nh

  • 7/24/2019 Giao Trinh 2014

    9/174

    ph^m 6ao g\m in thoi thng minh v m:y tnh 6ng chy h iLu hnh 5nd1oid, do c:c bit:c ph>n c?ng sn Duu tin BCc joogl3g]i tn th3o c:c m"n \ &n vQi chJ c:i 6~t >u BCc D.p th3o th? t alpha63t# 5nd1oid +#khng c" nhiLu i;m thay _i so vQi ngBPi tiLn nhim c@a m=nh# joogl3 ch i;m thm vi

    i;m ; lm giao din t1ng 6"ng 6^y, mBCt m hIn m!t t, chng hn nhB idg3t t=m ki.m c"

    Trang

    http://vi.wikipedia.org/w/index.php?title=Nexus_One&action=edit&redlink=1http://vi.wikipedia.org/w/index.php?title=Nexus_4&action=edit&redlink=1http://vi.wikipedia.org/w/index.php?title=Nexus_10&action=edit&redlink=1http://vi.wikipedia.org/wiki/LGhttp://vi.wikipedia.org/w/index.php?title=Nexus_One&action=edit&redlink=1http://vi.wikipedia.org/w/index.php?title=Nexus_4&action=edit&redlink=1http://vi.wikipedia.org/w/index.php?title=Nexus_10&action=edit&redlink=1http://vi.wikipedia.org/wiki/LG
  • 7/24/2019 Giao Trinh 2014

    10/174

    ! t1ong subt nhG, 6i;u tBCng app d1a31 c" m!t sb hoa v&n nh mQi, 8 $"i chung, giao dinkhng phi l m!t i;m nhm g>n $7# jing31613ad Ba vo h thbng m!t cng cH un l ti tp tin, cho phNpth3o di v t1uy Du

  • 7/24/2019 Giao Trinh 2014

    11/174

    s dHng m:y tnh 6ng, 6n phm o thEn thin hIn, h t1C D l a t:c vH /multi-tasking9, chophNp chuy;n _i ua li c:c ?ng dHng ang cfng chy# Xhng ch c" 6L mrt BCc t1au chubt,ph>n li h thbng c" c:c ci ti.n tBIng thch vQi ph>n c?ng nhB h t1C chip D l /729 a li,t&ng tbc ph>n c?ng8

    5nd1oid #( rt nLn m"ng uan t1]ng cho th. h 5nd1oid #D hCp nhm hot !ng cho h iLu hnh c@ajoogl3, t1` thnh h iLu hnh cho thi.t 6A di !ng hng >u hin nay, 3 d]a c ng lQnSindos# Xh n&ng s~p D.p giao din ch@ v idg3t t1ong 3lly K3an 1

  • 7/24/2019 Giao Trinh 2014

    12/174

    kh3,8 Klu3tooth 0ma1t 3ady l nhJng thi.t 6A c" kh n&ng k.t nbi .n c:c thi.t 6A Klu3tooth0ma1t, \ng thPi ven c" c:c tnh n&ng u3n thu!c nhB t1uyLn tp tin, k.t nbi tai ngh3,8

    '=nh )#)# X.t nbi 6lu3tooth thng minh

    i2hon3, i2ad, 0amsung jalaDy 0VVV, Uoto1ola 41oid 5,8 l nhJng thi.t 6A O h t1CKlu3tooth 0ma1t 3ady# [ 5nd1oid #, hai dYng thi.t 6A $3Dus v $3Dus mQi /phin 6n

    )(+9 cMng c" kh n&ng h t1C cng ngh Klu3tooth 0ma1t 3ady /cYn g]i l Klu3tooth o-n31gy9# $hP vy, hai thi.t 6A n>y c" th; giao ti.p vQi c:c thi.t 6A ngoi vi s dHng Klu3tooth0ma1t nhB m:y o nhAp tim, hay \ng h! .m 6BQc chy 6! thng ua k.t nbi Klu3tooth #(,vQi i;m mnh l khng gEy hao tbn nhiLu dung lBCng pin khi s dHng#Thm m!t ci ti.n vL k.t nbi Klu3tooth, khi 5nd1oid # h t1C p1o}il3 5%72 +#, cho phNpt1uyLn thng tin vL tn 6i h:t ln c:c thi.t 6A ph:t nhc t Da thng ua k.t nbi Klu3tooth, nhBdn Em thanh t1ong D3 hIi, hay loa Klu3tooth#

    3ndrid N!NH SitSat

    T1ong s kin din 1a vo s:ng +*++ /th3o giP %$9, joogl3 O cng 6b nLn tng di !ngmQi nh

  • 7/24/2019 Giao Trinh 2014

    13/174

  • 7/24/2019 Giao Trinh 2014

    14/174

    ;!N u nhUc &i ca 3ndrid

    u &i ca 3ndrid

    TVnh #inh h>tH 5nd1oid k. tha tnh m` t inuD, hay n"i cH th; hIn l joogl3 v

    5nd1oid mang .n m!t th. giQi hon ton m`# %Qi 5ppl3, ngBPi dfng dBPng nhB 6A c!t chrtvQi nhJng g= hOng ny cho phNp, t tnh n&ng chu^n cho .n ?ng dHng ch nhJng ?ng dHngBCc 5ppl3 cng nhn mQi c" th; hot !ng t1n i2hon3 m!t c:ch hCp ph:p# 5ppl3 tin 1ng "l c:ch ; h] ki;m so:t c gu\ng m:y kinh doanh, t thi.t 6A >u cubi, dAch vH cho .n ?ngdHng 6_ sung# T1ong khi ", t1ong th. giQi 5nd1oid, ngBPi dfng BCc t do vQi nhJng g= h]mubn, c:c nh ph:t t1i;n c" BCc s t do hIn ; to v thBIng mi c:c ?ng dHng, v c:c nhsn Dun thoi m:i hIn-hi"u c?ng c dnh ch ngXi dYng hnH %Qi5pp Vnv3nto1,joogl3 O thm ch rt

    vo tay ngBPi dfng nhiLu s?c mnh hIn# %Qi 1

  • 7/24/2019 Giao Trinh 2014

    15/174

    ,^ nhi^ ph_n " &'c h>i v vi1usR 5nd1oid hot !ng nhB h iLu hnh m` v Dun Ey nh

  • 7/24/2019 Giao Trinh 2014

    16/174

    %` Si$n trc n"n tng

    '=nh )# R 7n thi.t cI 6n nhBR contacts, phon3, K1os31, 7am31a 8Tn mLm ch?ng kho:n /0tock9, c:c t1Y chIi /jam39,t i;n8 9#

    7:c chBIng t1=nh c" c:c rc i;m lR

    %i.t 6ng ava, ph>n m` 1!ng l apk#

    Xhi mi ?ng dHng BCc chy, n" c" m!t phin 6n %i1tual Uachin3 BCc dng ln ;phHc vH h thbng# $" c" th; l m!t 5ctiv3 21og1am R 7hBIng t1=nh c" giao din vQi ngBPis dHng horc l m!t 6ackg1oundR chBIng t1=nh chy nLn hay l dAch vH#

    5nd1oid l h iLu hnh a nhim, iLu " c" ngha l t1ong cfng m!t thPi i;m, c"th; c" nhiLu chBIng t1=nh cfng chy m!t lc, tuy nhin, vQi mi ?ng dHng th= c" duy nhu#

    Trang 15

  • 7/24/2019 Giao Trinh 2014

    17/174

    Trang 16

  • 7/24/2019 Giao Trinh 2014

    18/174

    Applycation Fram!"or#

    Kng vic ph:t t1i;n t1n nLn tng mO ngu\n m` /Wp3n sou1c3 cod39, 5nd1oid cungc

    n mLm kh n&ng DEy dng c:c ?ng dHng cc k phong phv sinh !ng v s:ng to# '] BCc t do tn dHng c:c ti nguyn vL thi.t 6A ph>n c?ng,thng tin Aa i;m t1uy cp, c:c dAch vH chy /s31vic3s 1un9, c:c thi.t lp 6:o c:o, thng

    6:o, t1ng th:i 8 $h ph:t t1i;n c" th; t1uy cp vo c:c hm 52V cfng m!t khun kh_BCc s dHng 6`i c:c ?ng dHng li# 7:c ki.n t1c BCc thi.t k. In gin h"a vic s dHngli c:c thnh ph>n#

    T>ng 5pplycation 1am3o1k 6ao g\m nhiLu dAch vH /s31vic3s9 cho vic un lR

    3ctivit( +anag*rH un l vYng Pi /li}3cycl39 c@a c:c ?ng dHng iLu hBQng cho c:cavtivity#

    AindB +anag*rH cung c

  • 7/24/2019 Giao Trinh 2014

    19/174

    Mr**T(p*H6! to phng chJ dng 6itmap v v3cto1#

    2eLit*H h un l cI s` dJ liu cho c:c ?ng dHng vQi rc i;m chy nhG nhng vvic un l mnh#

    Android otin!*

    # 2h>n ny ch?a c:c thB vin m m!t chBIng t1=nh vi.t 6ng ngn ngJ ava c" th; hot!ng # 2h>n ny c" ) 6! phn tBIng t nhB m h=nh chy ava t1n m:y tnh thBPng# Th? nh

  • 7/24/2019 Giao Trinh 2014

    20/174

    U!t chBIng t1=nh ki;m t1a 3mail tBIng thch vQi jmail 7hBIng t1=nh un l tin nh~n 0U0 2hin 6n thu g]n c@a googl3 map T1=nh duyt 36 7hBIng t1=nh t:n geu/chat9

    a phBIng tin 7hBIng t1=nh un l thng tin c: nhEn

    T

  • 7/24/2019 Giao Trinh 2014

    21/174

    Trang 20

  • 7/24/2019 Giao Trinh 2014

    22/174

    Chng :

    )h_n " pht trin ng dng 3ndrid

    :!1 ,Bn#ad cc g\i ph_n " c?ng c 04X 54T 6undl3 }o1 indos R 3clips3, sdk, sdk manag31# 54T plugin 2h>n mLm ava ku)+

    ,u .+ cc file gi/i n0n "1 c1i 234t n(n lu c5ng t! mc6

    5nd1oid 04X thc ch

  • 7/24/2019 Giao Trinh 2014

    23/174

    '=nh #)R 4onload 04X phin 6n x 6it

    K)R Ti 54T vL th3o link httpR**d3v3lop31#and1oid#com*tools*sdk*3clips3-adt#html#7h]n phin 6n mQi nh

  • 7/24/2019 Giao Trinh 2014

    24/174

    '=nh # R Ti 54T

    '=nh #R Ti 54T

    Q: H Ti min ph 6! 4X t t1ang 36 c@a W1acl3 ti Aa chR

    httpR**#o1acl3#com*t3chn3to1k*ava*avas3*donloads*ind3D#html

    Trang 23

    http://www.oracle.com/technetwork/java/javase/downloads/index.htmlhttp://www.oracle.com/technetwork/java/javase/downloads/index.html
  • 7/24/2019 Giao Trinh 2014

    25/174

    '=nh #x R 2h>n mLm dk-u)+ /ava9 sau khi ti vL

    :!; Ci &jt %' P,S p#atr P,S` .4u;1

    0au khi ti 4X ku)+ vL, ta ti.n hnh ci &t#

    '=nh # R 7i rt 6! 4X 2lat}o1m

    7h]n n*t

    Trang 24

  • 7/24/2019 Giao Trinh 2014

    26/174

    '=nh # R 7i rt 6! 4X 2lat}o1m

    ; mrc Anh c:c thng sb, ti.p tHc 7lick -*t

    '=nh #qR 7i rt 6! 4X 2lat}o1m

    u: t1=nh ci rt 6! 4X 6~t >u, Ci cho .n khi ti.n t1=nh k.t thc#

    Trang 25

  • 7/24/2019 Giao Trinh 2014

    27/174

    '=nh #+(R 7i rt 6! 4X 2lat}o1m

    7lick c#s* ; hon t( ph_n " c#ips*

    K! clips3 khng c>n ci rt, c:c 6n vo }il3 adt%und#*BindBs65J5N;/1:/;10va tivL, t=m }il3 *#c#ips*bchy }il3 *c#ips*!**

    '=nh #++R 7hy 3clips3#3D3

    Trang 26

  • 7/24/2019 Giao Trinh 2014

    28/174

    '=nh #+)R Un h=nh kh`i !ng c@a clips3

    '=nh #+R Un h=nh ch]n thB mHc lm vic c@a clips3

    '=nh #+R Un h=nh lm vic c@a chBIng t1=nh clips3#

    :!N Ci &jt 3ndrid )#ugin 3,T v c#ips*

    7hy chBIng t1=nh c#ips*b ti m3nu '3lp, ch]n Onsta## -*B 2tBar*

    Trang 27

  • 7/24/2019 Giao Trinh 2014

    29/174

    '=nh #+R u: t1=nh cn mLm clips

    7h]n 5dd, g tn tfy vo $am3 v g Aa ch ; ti 54T vo ocation ho&c t=m.n thB mHc 54T O ti ` t1n#

    'orc

    Trang 2

  • 7/24/2019 Giao Trinh 2014

    30/174

    '=nh #+x R u: t1=nh cn mLm clips3

    Trang 2!

  • 7/24/2019 Giao Trinh 2014

    31/174

    '=nh #+R u: t1=nh cn mLm clips3

    T=m .n thB mHc lBu }il3 54T O ti vL#

    '=nh #+R u: t1=nh cn mLm clips3

    7h]n s3l3ct all

    Trang 30

  • 7/24/2019 Giao Trinh 2014

    32/174

    '=nh #+qR u: t1=nh cn mLm clips3

    K

  • 7/24/2019 Giao Trinh 2014

    33/174

    7hBIng t1=nh yu c>u D:c nhn vic ch

    u kh`i !ng li chBIng t1=nh, 6

  • 7/24/2019 Giao Trinh 2014

    34/174

    '=nh #)R 7i &t c:c cng cH, thB vin lEp t1=nh

    '=nh #)R 7i &t c:c cng cH, thB vin lEp t1=nh

    Trang 33

  • 7/24/2019 Giao Trinh 2014

    35/174

    ,u .+ t1BQc khi chy 04X Uanag31 phi cho m:y tnh k.t nbi mng Vnt31n3t, v= u: t1=nhci rt c@a 04X Uanag31 Yi hi k.t nbi tQi m:y ch@ c@a joogl3 ; cp nht phin 6n mQinhn thi.t y.u# u: t1=nh ti c:c thnh ph>n thi.t y.u din 1am!t c:ch t !ng cho 04X Uanag31 m nhim#

    :nh dn avadoc m t hot !ng

    c@a c:c phBIng th?c v c:c lQp, 0ampl3 l c:c on 7od3 meu, 04X 2lat}o1m ?ng vQi c:cphin 6n h iLu hnh /)#) 52V l3v3l , )#+ 52V l3v3l ,89 v joogl3 52V ; ph:t t1i;nc:c ph>n mLm lin uan .n dAch vH c@a googl3# 7lick Onsta## pac.ag*s ` g"c phi ; ti.p tHcu: t1=nh ci rt#

    $.u ch]n h.t t

  • 7/24/2019 Giao Trinh 2014

    36/174

    '=nh #)xR 7i &t c:c cng cH, thB vin lEp t1=nh

    u: t1=nh donload v ci &t din 1a kh: lEu#

    ,u . + 7 ct status 8u9t !i#n installe' ng!:a l1 2; 2 not installe' l1 c!a2

  • 7/24/2019 Giao Trinh 2014

    37/174

    '=nh #)R u: t1=nh cn mLm clips3

    '=nh #)R u: t1=nh cn mLm clips3

    :!4 Ci &jt thi$t % ch>( gi #op3ndrid 9irtua# ,*vic*s`

    T1ong u: t1=nh lp t1=nh cod3 cho c:c ?ng dHng c@a 5nd1oid W0, lp t1=nh vin c>n phic" + cng cH ; d36ugging v t3sting /gZ 1bi v ki;m t1a9 chy t1c ti.p t1n m:y tnh, m

    phng D3m th c:c cod3 O vi.t c" chy ng th3o yu c>u O rt 1a hay khng, t1BQc khi ?ngdHng " BCc cho chy t1n thi.t 6A thc t.# K! cng cH 5nd1oid 04X cung c

    m tay thc s#

    Trang 36

  • 7/24/2019 Giao Trinh 2014

    38/174

    5nd1oid mulato1 BCc t1ang 6A >y @ h>u h.t c:c tnh n&ng c@a m!t thi.t 6A tht# Tuynhin, m!t sb O 6A giQi hn nhB l k.t nbi ua c_ng 0K, cam31a v vid3o, ngh3 phon3, ngu\nin gi lp v 6lu3tooth#

    Cc b?c t!i@t l$p mt An'roi' mulator

    T m3nu AindBsc@a clips3, ch]n mHc 3ndrid 2,S and 39, +anag*r!

    '=nh #)qR u: t1=nh ci rt m:y o 5nd1oid

    T1ong ca s_ 3ndrid 2,S and 39, +anag*r, t1ong danh s:ch ch]n 9irtua#d*vic*s, 6

  • 7/24/2019 Giao Trinh 2014

    39/174

    '=nh #+R u: t1=nh ci rt m:y o 5nd1oid

    -a*H Tfy / nhBng k t BCc s dHng c:c l t 5-, a-,#-, ngha l khongt1~ng cMng khng BCc9#

    Targ*tR 7h]n phin 6n h iLu hnh 6n mubn# 2, CardR g vo 0i3 04 7a1d o cho 5%4, horc chnh tQi tp tin O c" sn# $hiLu

    5%4 c" th; dfng chung 0dca1d#

    2.inR c" th; ; 43}ault / '%j59 horc ch]n kch cZ mn h=nh 6n mubn# 7h c>n uantEm tQi optionR '%j5 ! phEn gii )(-(, %j5 ! phEn gii )+-)(, S%j5 !

    phEn gii (-,8

    2napshtR cho phNp ch?c n&ng tBIng t nhB stand6y c@a indos#

    Xhi O thi.t lp Dong cn c?ng cho m:y o, 6

  • 7/24/2019 Giao Trinh 2014

    40/174

    '=nh #)R u: t1=nh ci rt m:y o 5nd1oid

    -*BH to m!t m:y o 54% kh:c#

    ditH chnh sa m:y o 54% O to t1BQc "#

    ,*#*t*HD"a m:y o 54% O to#

    7*pairHt1ong u: t1=nh d36ug, m:y o c" th; 6A li, ; kh:c phHc ta dfng ch?c n&ng3pai1#

    ,*tai#sHlit k thng tin chi ti.t c@a m:y o /$am3, BPng den lBu }il3 54%, Ta1g3t,04 ca1d 8 9

    2tartH kh`i !ng m:y o#

    Trang 3!

  • 7/24/2019 Giao Trinh 2014

    41/174

    '=nh #R u: t1=nh ci rt m:y o 5nd1oid

    Xhi nhn ngBPi dfng BCc thi.t lp#

    0cal3 display to 13al si3R chnh t l mn h=nh# 7" th; ; mrc Anh /khng ch]n9 horcch]n vo mHc ny, sau " thi.t lp c:c thng sb mn h=nh ` khung 6n dBQi#

    Sip3 us31 dataR D"a ton 6! dJ liu c@a phin lm vic t1BQc " c@a m:y o# $.ukhng ch]n mHc ny, m:y o sF ven lBu c:c gi: t1A dJ liu c@a nhJng phin lm vict1BQc#

    aunch }1om snapshotR cho phNp m:y o chy li sau khi thc hin ch?c n&ng0napshot#

    0av3 to snapshotR lBu c:c thng tin vo 0napshot cho l>n kh`i !ng sau#

    0au khi thi.t lp Dong, nh

  • 7/24/2019 Giao Trinh 2014

    42/174

    '=nh #R Un h=nh m:y o 5nd1oid

    $h=n t_ng uan, ta th

  • 7/24/2019 Giao Trinh 2014

    43/174

  • 7/24/2019 Giao Trinh 2014

    44/174

    "s(sp(r%)ss)*n an/r*)/na%(+,an/r*)/-p(r%)ss)*n-:?>>=FHN,

    "%an)(s

    3pp#icatin

    Thz application, 6n t1ong thz ny ch?a c:c thu!c tnh BCc Anh ngha cho ?ng dHng

    5nd1oid nhBRandridHicn q d1aa6l3 13sou1c3 [ Ey rt BPng den .n }il3 icon c@a ?ng dHng

    khi ci rt# %4R and1oidRicon wd1aa6l3*icon#

    andridHna* q st1ing thu!c tnh ny ; rt tn cho ?ng dHng 5nd1oid# Tn ny sFBCc hi;n thA ln mn h=nh sau khi ci rt ?ng dHng#

    andridHth** q d1aa6l3 th3m3 thu!c tnh ny ; rt th3m3 cho ?ng dHng# 7:cth3m3 l c:c c:ch ; hi;n thA giao din ?ng dHng# $goi 1a cYn nhiLu thu!c tnh kh:c8

    )*rissin

    Kao g\m c:c thu!c tnh ch Anh uyLn t1uy Dun s dHng m!t loi ti nguyn no " th= t1ong }il3 mani}3st c@a ?ng dHng c>n phi khai 6:oc:c uyLn t1uy Du

  • 7/24/2019 Giao Trinh 2014

    45/174

    p8&). @na& .&ass C M

    p8&). sa). @na& .&ass arra9 M

    p8&). sa). @na& )n arra9=)%(*+0$7050000L

    p8&). sa). @na& .&ass ar M

    p8&). sa). @na& .&ass /rai ca ng dng 3ndrid

    U!t ti.n t1=nh inuD g"i g]n m!t ?ng dHng 5nd1oid O BCc to 1a cho ?ng dHng khicod3s c>n BCc chy /1un9 v sF cYn chy cho .n khiR

    - $" khng cYn phH thu!c#

    Trang 44

  • 7/24/2019 Giao Trinh 2014

    46/174

  • 7/24/2019 Giao Trinh 2014

    47/174

    T1ong 3clips3 ; to m!t 5ctivity mQi,6n thc hin c:c 6BQc sauR

    Q1#7h]n thB mHc sc1

    K

  • 7/24/2019 Giao Trinh 2014

    48/174

    '=nh #)R $3 ava 7lass

    7a #hi 4i3n 4y 4 th;ng tin< Ta ch=n >inih? r@i #im tra trong th$ mc cr c1 chaActi%ity mi hay ch$an thi.t# % dHR gi s 5ctivity 5nh~c ngBPi dfng ch]n nh p1o}il3 5ctivity K lit k c:c nh t1ong thz nhQ v cho phNp ngBPidfng ch]n nh# Xhi " crp cod313sult l c>n thi.t v c" th; l (Rnull t?c canc3l horc+Rnh )( t?c ch]n nh )(#

    Siu d #iu ca Ont*ntH Vnt3nt vL cI 6n l m!t c

  • 7/24/2019 Giao Trinh 2014

    52/174

    nghCa mDt E nt!nt th;ng dng*

    57TVW$5$0S - m` 5ctivity ; D l cu!c g]i tQi, thBPng l 2hon3 4ial31 c@a5nd1oid#

    57TVW$75 - m` + 2hon3 4ial31 /mrc Anh l 24 c@a 5nd1oid9 v ngay lp t?c thchin cu!c g]i da vo thng tin t1ong data V#

    57TVW$4T - m` 5ctivity cho phNp D"a dJ liu m Aa ch c@a n" ch?a t1ong dataV

    57TVW$4V5 - m` + 2hon3 4ial31 /mrc Anh l 24 c@a 5nd1oid9 v iLn thng tin l

  • 7/24/2019 Giao Trinh 2014

    53/174

    -hai b/o nt!nt

    Siu .hai % Ont*nt tXng inh p#icit Ont*nts`H

    Vnt3nt c" th; dfng thu!c tnh phH compon3nt ; ch Anh ch danh tn lQp sF thc thi5ctivity# ; thc hin iLu ny, lQp Vnt3nt cung c

  • 7/24/2019 Giao Trinh 2014

    54/174

    T1n l + v dH vL 5ctivity vQi 6! l]c Vnt3nt cho phNp 6~t v D l c:c Vnt3nt gi tin nh~n0U0#

    N!1!5 TE hiu v" Cnt*nt )rvid*r v f7O

    T1ong h thbng 5nd1oid tn ny nhB l V4 c@a 1o

    t1ong ta6l3 horc m!t dJ liu no " dfng ; t1uy vu v BCc cho phNp hot !ng cho .n khi m!t ngBPi no "dng n" li horc n" t ng~t# [ ch. ! ny, n" BCc 6~t >u 6ng c:ch g]iConte8t6startSer"iceKv dng 6ng lnh Conte8t6stopSer"iceK# $" c" th; t ng~t 6ng lnh

    Trang 53

    5 K 7 4

  • 7/24/2019 Giao Trinh 2014

    55/174

    Ser"ice6stopSelfK horc Ser"ice6stopSelfResultK# 7h c>n m!t lnh stopSer"iceK ; ngng031vic3 li cho df lnhstartSer"iceKBCc g]i 1a 6ao nhiu l>n#

    - 031vic3 c" th; BCc vn hnh th3o nhB O BCc lp t1=nh vic s dHng m!t Vnt31}ac3m n" Anh ngha# 7:c ngBPi dfng thi.t lp m!t BPng t1uyLn tQi bi tBCng 031vic3 v s dHngBPng k.t nbi " ; thEm nhp vo 031vic3# X.t nbi ny BCc thi.t lp 6ng c:ch g]i lnh

    Conte8t6bin'Ser"iceK v BCc "ng li 6ng c:ch g]i lnh Conte8t6unbin'Ser"iceK# $hiLungBPi dfng c" th; k.t nbi tQi cfng m!t thi.t 6A# $.u 031vic3 ven chBa BCc kh`i chy, lnhbin'Ser"iceKc" th; tfy kh`i chy n"#

    'ai ch. ! ny th= khng t:ch 6it ton 6!# Kn c" th; k.t nbi vQi m!t 031vic3 m n" OBCc 6~t >u vQi lnhstartSer"iceK#

    F 'R m!t 031vic3 ngh3 nhc ` ch. ! nLn c" th; BCc 6~t >u 6ng c:ch g]i lnhstartSer"iceKcfng vQi m!t bi tBCng Vnt3nt m Anh dng BCc Em nhc ; chIi# 7h sau ",c" th; l khi ngBPi s dHng mubn ki;m so:t t1=nh chIi nhc horc 6i.t thm thng tin vL 6i h:thin ti ang chIi, th= sF c" m!t 5ctivity to lp m!t BPng t1uyLn tQi 031vic3 6ng c:ch g]ibin'Ser"iceK# T1ong t1BPng hCp nhB th. ny,stopSer"iceKsF khng thc s ngng 031vic3

    cho .n khi lin k.t cubi cfng BCc "ng li#jibng nhB m!t 5ctivity, m!t 031vic3 cMng c" c:c phBIng th?c chu k thPi gian m 6n c"

    th; ci rt ; ki;m so:t nhJng s thay _i t1ong t1ng th:i c@a n"# 031vic3 ch c" phBIngth?c BCc g]i .n t1ong chu t1=nh sbng lR

    void on713at3/9

    void on0ta1t/Vnt3nt int3nt9

    void on43st1oy/9

    Kng vic thc hin nhJng phBIng th?c ny, ta c" th; gi:m s:t ) vYng lrp c@a chu k thPigian c@a mi 031vic3 nti13 li}3tim3 c@a m!t 031vic3 din 1a giJa thPi gian onCreateKBCc

    g]i 1a v thPi gian m onDestroyKt1 li# jibng nhB m!t 5ctivity, m!t 031vic3 li ti.n hnhci rt 6an >u ` onCreateK, v gii ph"ng tu 6ng m!t lnh tQi onStartK# Ey l phBIng th?cBCc chuy;n giao bi tBCng Vnt3nt m O BCc thng ua ; tQistartSer"iceK6

    Xhng c" call6ack tBIng BIng no cho thPi i;m 031vic3 ngng li khng c" phBIngth?c onStopK# 7:c phBIng th?c onCreateKv onDestroyKBCc g]i cho t

  • 7/24/2019 Giao Trinh 2014

    56/174

    '=nh #xR Bu \ minh h]a cho c:c phBIng th?c call6ack ginh cho m!t 031vic3#

    Urc df, n" phEn t:ch c:c 031vic3 BCc to 1a thng ua startSer"icevQi c:c 031vic3 mBCc to 1a 6ng bin'Ser"iceK# 'Oy nhQ 1ng 6n chnh c@a m!t h thbng 5nd1oid# $" cho phNp ngBPilp t1=nh c" th; l

  • 7/24/2019 Giao Trinh 2014

    57/174

    - 7" th? tR 13c3iv31 no &ng k Bu tin hIn th= nhn t1BQc, v c" th; t1uyLn thmthng tin D l cho c:c 13c3iv31 sau#

    Thc 1a vYng Pi /li}3cycl39 c@a K1oadcast3c3iv31 ch c" duy nhu t1uyLn thm 7ont3Dt#

    Th? hai, ; s dHng c:c phBIng th?c c@a lQp 7ont3Dt# Vnt3nt BCc t1uyLn vo sF c" >y

    @ thng tin nhB s kin no m 13c3iv31 ny &ng k O Dy 1a den .n onRecei"eKBCc g]i, c" gi km thng tin g= horc dJ liu g= hay khng#

    N!; Thnh ph_n gia din trng 3ndridN!;!1 9i*B

    T1ong m!t ?ng dHng 5nd1oid, giao din ngBPi dfng BCc DEy dng t c:c bi tBCng %i3v %i3j1oup# 7" nhiLu ki;u %i3 v %i3j1oup# Ui m!t ki;u l m!t nh:nh con c@a class%i3 v t

  • 7/24/2019 Giao Trinh 2014

    58/174

    T1ong 5nd1oid 2lat}o1m, c:c sc133n lun BCc 6b t1 th3o m!t ki;u cn t1ong n" khng 6A phH thu!c vo kch thBQc c@a mn h=nh# 7:c thnh ph>n t1ongin3a1ayout BCc dn th3o nhJng t{ l cEn D?ng da vo c:c 1ng 6u!c giJa c:c thnh ph>n#

    - Mra*La(ut1am3ayout BCc dfng ; 6b t1 c:c bi tBCng th3o ki;u gibng nhB l c:c ay31 t1ong

    2hotoshop# $hJng bi tBCng no thu!c ay31 6n dBQi th= sF 6A ch3 khuu th= vA t1 c@a

    c:c bi tBCng sF khng cYn BCc chnh D:c nhB 6an >u#

    - 7*ta#iv*La(ut

    ayout ny cho phNp 6b t1 c:c idg3t th3o m!t t1Hc bi D?ng ngang horc d]c# ; rtBCc ng vA t1 th= c:c idg3t c>n BCc D:c Anh m!t mbi 1ng 6u!c no " vQi c:c idg3tkh:c# 7:c 1ng 6u!c ny l c:c 1ng 6u!c t1:i, phi, t1n, dBQi so vQi m!t idg3t horc so vQilayout pa13nt# 4a vo nhJng mbi 1ng 6u!c " m 3taliv3ayout cMng khng phH thu!c vokch thBQc c@a sc133n thi.t 6A# $goi 1a, n" cYn c" Bu i;m l gip ti.t kim layout s dHngnhm mHc ch gim lBCng ti nguyn s dHng khi load \ng thPi ^y nhanh u: t1=nh D l#

    - Ta%#*La(ut

    ayout ny BCc s dHng khi c>n thi.t k. m!t ta6l3 ch?a dJ liu horc c>n 6b t1 c:cidg3t th3o c:c 1o v column# 7hng hn nhB, giao din c@a m!t chi.c m:y tnh In ginhorc m!t danh s:ch dJ liu#

    N!;!: Quttn

    0` d idg3t 6utton BCc giQi thiu >u tin t1ong sb c:c idg3t kh:c l v= Ey l bitBCng c" th; n"i l BCc dfng nhiLu nhu h.t c:c ?ng dHng 5nd1oid#

    ; thi.t k. giao din vQi m!t 6utton ta c" ) c:ch nhB sauR

    Thi$t .$ %wng x+L

    "B*n

    Trang 57

  • 7/24/2019 Giao Trinh 2014

    59/174

    an/r*)/&a9*=

  • 7/24/2019 Giao Trinh 2014

    60/174

    khng c" h=nh d:ng c@a m!t c:i 6utton#

    7od3R

    I%ag(E)(< )' + n(< I%ag(E)(

  • 7/24/2019 Giao Trinh 2014

    61/174

    ditT3Dt

    and1oidRid]^_i'`'itYe8t]

    and1oidRlayoutidth]rapdcontent]

    and1oidRlayouth3ight]rapdcontent]

    and1oidRt3Dt0tyl3]bol']and1oidRt3Dt0i3]X'ip]

    and1oidRt3Dt7olo1]]

    and1oidRt3Dt]Iello An'roi']

    and1oidRsingl3in3]true]

    and1oidRinputTyp3]te8tCapor's]*

    7:c thu!c tnh c>n ch s dHng ditT3Dt " lR

    and1oidRinputTyp3 8 s dHng ; D:c Anh phBIng th?c nhp cho ditT3Dt# 7hng hn nhBkhi 6n mubn m!t ; nhp passo1d hay m!t ; nhp mail th= thu!c tnh ny sF lm iLu"#

    and1oidRsingl3in3 t1u3 ditT3Dt c@a 6n sF t1` thnh m!t T3Dti3ld, ngBCc li sF lT3DtKoD#

    N!;!0 Ch*c.Q

    $hn ) gi: t1A t1u3 horc }als3# bi tBCng 7h3ckKoD cho phNp ch]n nhiLu it3m cfng m!tlc#

    Xhai 6:oR 7h3ckKoD c6 n3 7h3ckKoD/7ont3Dt 89

    UR":h(.B*$

    an/r*)/)/+,;)/:h(.B*$01,

    an/r*)/&a9*=

  • 7/24/2019 Giao Trinh 2014

    62/174

    pr)'a( )n gr*p2I/ + 2L

    ;'(rr)/(

    p8&). '*)/ *n:r(a(OBn/&( sa'(/Insan.(Da(P M

    sp(r-*n:r(a(Osa'(/Insan.(Da(PL

    h)s-s(:*n(nE)(

  • 7/24/2019 Giao Trinh 2014

    63/174

    n(< A(nInXa(rO

    g(?pp&).a)*nOPP-)nXa(OC-%(n-menu_option4W %(nPL

    r(rn sp(r-*n:r(a(p)*nsA(nO%(nPL

    Trang 62

  • 7/24/2019 Giao Trinh 2014

    64/174

    7hBIng p t1=nh 5nd1oid cI 6n

    K!1-g?n ng ava trng #op trEnh andrid tr=n ph_n " *c#ips* H

    7" 1n, c" th; thc thi t1n nhiLu dYng m:y v thi.t 6A kh:c nhau#

    $gn ngJ lp t1=nh ava BCc s dHng ; DEy dng t c:c ?ng dHng nh g]n nhB thi.t 6Ac>m tay, c:c ?ng dHng gii t1, .n c:c ?ng dHng lQn cho doanh nghip# 'in nay, c:c nh ph:tt1i;n vi.t ?ng dHng cho 5nd1oid Lu da t1n ngn ngJ ava#

    Ti.p th3o chng ta sF t=m hi;u sI 6! vL ngn ng lp t1=nh ava

    K!1!1!K!1!1!Shi ni &

  • 7/24/2019 Giao Trinh 2014

    65/174

    - 'ng l m!t gi: t1A 6

  • 7/24/2019 Giao Trinh 2014

    66/174

    Bu R T1ong ava phEn 6it chJ hoa chJ thBPng, v= vy chng ta c>n lBu khi rt tn choc:c 6in, c:c bi tBIng dJ liu cMng nhB c:c D l t1ong chBIng t1=nh#T1ong ava, 6i.n c" th; BCc khai 6:o ` 6

  • 7/24/2019 Giao Trinh 2014

    67/174

    Xi;u Xch thBQc /6yt3s9 ji: t1A min ji: t1A maD ji: t1A mrc Anh

    6yt3 + -)x ) (

    0ho1t ) -)x )x (

    ong -)x )x- + (

    loat (#(}

    dou6l3 (#(d

    int -)+ )+- + (

    Kng # )R 7:c ki;u dJ liu cI s` Siu s< ngu(=nSiu s< ngu(=nava cung c

    X> jc!ar arrC!arvw |a}> |b}> |c}j

    String arrStrngvw ~ABC> ~G> |GIx}j

    - T1uy cp mng7h sb mng t1ong ava 6~t >u tB (# %= vy ph>n t >u tin c" ch sb l (, v ph>n t

    th? n c" ch sb l n-+# 7:c ph>n t c@a mng BCc t1uy Du 't pr*ct H

    Q1R To d :n mQi 6ng c:ch vo il3$35nd1oid 5pplication 21o3ct8# horc dfngnt $3 t1n thanh cng cH#

    '=nh # +R To p1o3ct mQi

    Q;H7a s_ $3 5nd1oid 5ppliction Du

  • 7/24/2019 Giao Trinh 2014

    74/174

    '=nh # ) RTo p1o3ct mQi

    - 5pplication $am3R tn ?ng dHng /a , ( q9, nn vi.t hoa k t >u tin- 21o3ct $am3R tn d :n /thng thBPng ta nn rt cfng tn vQi 5pplication $am3 nhm

    mHc ch d gCi nhQ9#

    - 2ackag3 $am3R thBPng c" ph>n m` 1!ng mrc Anh l com#3Dampl3#, ta c" th; thm 6Qthorc _i tn cho d un l v mang tnh gCi nhQ# 2hi c" t nh

  • 7/24/2019 Giao Trinh 2014

    75/174

    '=nh # R To p1o3ct mQi

    713at3 21o3ct in So1kspac3R 7h]n nIi lBu p1o3ct #

    Ua1k this p1o3ct as a li61a1yR 7h]n p1o3ct ny lm thB vin /$o9#

    713at3 custom launch31 iconR To Vcon cho p1o3ct /3s9#

    713at3 5ctivityRmi ?ng dHng phi c" t nh

  • 7/24/2019 Giao Trinh 2014

    76/174

    '=nh # R To p1o3ct mQi

    QKR 7a s_ 713at3 5ctivity Du

  • 7/24/2019 Giao Trinh 2014

    77/174

    KxR iLn c:c thng tin vo ca s_ 6lank 5ctivity horc ; mrc Anh#

    '=nh # xR To 5ctivity

    - 5ctivity $am3R Urc Anh l Uain5ctivity, ta c" th; thay _i, v phi 6~t >u 6ng chJ hoa vkhng c" c:c k t rc 6it#

    - ayout $am3R tn giao din, mrc Anh l activitymain, tBIng t ta c" th; thay _i BCc vphi 6~t >u 6ng chJ c:i thBPng v khng c" c:c k t rc 6it#

    - Titl3R ta c@a ?ng dHng, ph>n ny sF hi;n thA t1ong giao din c@a ?ng dHng#- 7:c mHc cYn li khng c>n uan tEm .n#

    Q4H$h

  • 7/24/2019 Giao Trinh 2014

    78/174

    '=nh # R 7:c thnh ph>n t1ong pakag3 3Dplo13

    T1ong " c" c:c tp tin v thB mHc chnh sau EyR

    3ndrid+ani*st!#R }il3 U khai 6:o c:c thnh ph>n c" t1ong ?ng dHng /activiti3s,

    s31vic3s,###9%inR ThB mHc ch?a ?ng dHng sau khi BCc 6in dAch#

    %inc#ass*sR ThB mHc ch?a tp tin cod3 ava O thng dAch#

    %inc#ass*s!d*R ThB mHc ch?a c:c tp tin c" kh n&ng thc thi to 6`i c:c lQp ava#

    %in9dau!ap.R Tp tin ci rt t1n thi.t 6A ; thc thi#

    #i%sR ThB mHc ch?a c:c tp 5 s dHng t1ong ?ng dHng/thB vin c@a hOng th? 6a9#

    srcR ThB mHc ch?a mO ngu\n ava c@a ?ng dHng#

    r*sR ThB mHc ch?a c:c ti nguyn c@a ?ng dHng, nhB c:c icons, tp tin layout,###

    r*sdraBa%#*R ThB mHc ch?a }il3 h=nh nh /2$j, 2j,###9#

    Trang 77

  • 7/24/2019 Giao Trinh 2014

    79/174

    r*s#a(utR ThB mHc ch?a c:c tp tin Dml :nh d

  • 7/24/2019 Giao Trinh 2014

    80/174

    '=nh # +(R Un h=nh nhp cod3 thi.t k. giao din ?ng dHng

    0au khi O thi.t k. giao din, ta c>n g:n n!i dung cho c:c thnh ph>n bi tBCng# 7" )c:ch ; g:n n!i dung cho c:c bi tBCngR

    - ./ch *g:n n!i dung t1c ti.p cho bi tBCng t1ong u: t1=nh thi.t k. giao din, v dHnhB bi tBCng T3Dt%i3 t1ong v dH t1n, sF BCc g:n n!i dung thng ua dYng lnhR

    T3Dt%i3

    and1oidRlayoutidth]rapdcontent]

    and1oidRlayouth3ight]rapdcontent]

    and1oidRt3Dt]I)A xh xh Y ]*

    X.t u t1n mn h=nh thi.t k., bi tBCng T3Dt%i3 sF c" n!i dungR

    Trang 7!

  • 7/24/2019 Giao Trinh 2014

    81/174

    '=nh # ++R jiao din and1oid

    - ./ch H* rt m!t 6i.n cho bi tBCng, sau " khai 6:o n!i dung c@a 6i.n t1ong }il3st1ing#Dml# % dH nhB bi tBCng T3Dt%i3 t1ong v dH t1n BCc khai 6:o 6i.n tn l tat1ong}il3 main#Dml nhB sauR

    T3Dt%i3and1oidRlayoutidth]filldparent]

    and1oidRlayouth3ight]rapdcontent]

    andridHt*tqKLtringMtamK *

    C!P . + k!ng cU k!o/ng trng trong '9u n!y ~

    T1ong khung 2ackag3 Dplo131, ch]n thB mHc va#u*s, dou6l3 click vo }il3 strings!#

    Trang 0

  • 7/24/2019 Giao Trinh 2014

    82/174

    '=nh # +)R Un h=nh thi.t k. n!i dung hi;n thA cho c:c bi tBCng

    [ ch. ! thi.t k. t1c uan, ch]n ta6 7*surc*s nhB h=nh t1n# 4anh s:ch c:c bi tBCngc" t1ong ?ng dHng ang thi.t k. BCc lit k t1ong khung 7*surc*s #**ntsb click vo 6i.nta /ki;u dJ liu 0t1ing9, khung 3ttri%ut*s r ta 2tring` sF lit k thng tin giQi thiu v) t3Dt6oD uan t1]ngR

    -a*R tam

    9a#u*R X'W5 V$ V$ T

    Ta cMng c" th; rt m!t 6i.n mQi 6ng c:ch click vo nt 3dd, D"a 6i.n ang c" 6ng c:chch]n 6i.n ", click 7*v*!

    [ ch. ! thi.t k. 6ng cod3, ch]n ta6 2trings!#nhB h=nhR

    Trang 1

  • 7/24/2019 Giao Trinh 2014

    83/174

    '=nh # +R Un h=nh nhp mO ngu\n n!i dung hi;n thA cho c:c bi tBCng

    0au khi ton t

  • 7/24/2019 Giao Trinh 2014

    84/174

    '=nh # +RUn h=nh nhp mO lnh chBIng t1=nh

    T1ong thB mHc src, ch]n packag3 vQi tn m ta O rt t1ong ph>n to mQi p1o3ct, dou6l3click vo }il3 c" ph>n m` 1!ng #ava, khung k. 6n sF hin 1a ca s_ cho ngBPi lp t1=nh nhpcod3 nhB h=nh t1n#

    $.u ngBPi lp t1=nh nhp cod3 khng ng c ph:p O uy Anh, chBIng t1=nh sF 6:o lingay ti dYng li " ; ngBPi lp t1=nh tin lCi t1ong vic ki;m t1a v sa li#

    K!;!;! Qi=n dch #i v ch>( ? phng ng dng H

    T m3nu 7unc@a clips3, ch]n 7un/horc nh

  • 7/24/2019 Giao Trinh 2014

    85/174

    '=nh # +xR Un h=nh chy m phng chBIng t1=nh

    '$ 9* do u: t1=nh kh`i !ng m:y o 54% 1n kh`i !ng thi.t 6A o54% m!t l>n duy nhu, sau khi D3m chy m phng Dong, ta khng nn t~t ca s_ m:yo 54% i m ch c>n thu nh li t1n thnh task6a1 c@a Sindos# T1ong nhJng l>n chy m

    phng ti.p th3o, ch c>n 6u m ngBPi lp t1=nh ; 1a, th= c>n BCc "ng g"i thnh + }il3 ci rt ; c" th; cirt v chy t1n c:c thi.t 6A 5nd1oid W0 thc thH# 7" c:ch R

    ./ch *t1ong khung )a.ag* p#r*r, click phi chu!t vo t=n pr*ct 3ndrid t#s prt fn2ign*d 3pp#icatin )ac.ag* {

    T1ong ca s_ prt )r*ct, ch]n BPng den cho }il3 c>n "ng g"i, nhp tn }il3 "ngg"i, 6

  • 7/24/2019 Giao Trinh 2014

    86/174

    '=nh # +R il3 #apk BCc dfng ; ci rt t1n c:c thi.t 6A chy h iLu hnh 5nd1oid#

    K!;!N! +'t s< #p thXng dYng & thi$t .$ gia dinQ

  • 7/24/2019 Giao Trinh 2014

    87/174

    K!;!K!: La(utH

    ayout BCc dfng l nIi 6b t1 c:c thnh ph>n %i3*layout con 6n t1ong n" /6n thEnlayout cMng l + vi39, c:c thnh ph>n %i3 nhB Kutton, ditT3Dt, Vmag3%i3, ist%i3 ####Tfy th3o kh n&ng s~p D.p c:c thnh ph>n %i3 th3o + t1t t nhn giao din th3o chiLu ngang horc chiLud]c nhBng t1n m!t lin3 /dYng9 duy nhn t1ong in3a1ayout BCc dn th3o nhJng t{ l cEn D?ng da vo c:c1ng 6u!c giJa c:c thnh ph>n#

    '=nh # +qR Kb t1 c:c idg3t s dHng in3a1ayout

    F '+ v dH vL in3a1ayout "ertical

    Mi#* ain!#

    ?ineara&out$mln43android8"http3//4chema4androidcom/apk/re4/android"

    $mln43tool48"http3//4chema4androidcom/tool4"

    android3id8"@+id/ineara&out1"

    android3la&out_width8"match_parent"

    android3la&out_height8"match_parent" android3orientation8"ertical"

    android3paddingBottom8"@dimen/actiit&_ertical_margin"

    android3paddinge,t8"@dimen/actiit&_horiAontal_margin"

    android3paddingight8"@dimen/actiit&_horiAontal_margin"

    android3paddingTop8"@dimen/actiit&_ertical_margin"

    tool43conte$t8"-ainctiit&" 7

    ?Te$tView

    android3la&out_width8"wrap_content"

    Trang 6

  • 7/24/2019 Giao Trinh 2014

    88/174

    android3la&out_height8"wrap_content"

    android3te$t8"D EF TGT FHIJ*"

    android3te$tColor8"KLaL0M" /7 // m#u chN

    ?Te$tView

    android3id8"@+id/te$tView1" android3la&out_width8"wrap_content"

    android3la&out_height8"wrap_content"

    android3la&out_grait&8"center" // cOn giNa te$tiew

    android3te$t8"P *Q- RS TUT" /7

    ?Button

    android3id8"@+id/5utton1"

    android3la&out_width8"wrap_content"

    android3la&out_height8"wrap_content"

    android3te$t8"@4tring/5t" /7

    ?/ineara&out7

    S$t Du thu &UcH

    '=nh # )(R k.t u m phng in3a1ayout

    Trang 7

  • 7/24/2019 Giao Trinh 2014

    89/174

    Gi/i t!c!

    La(utJBidthb #a(utJh*ightHchiLu 1!ng c@a vi3 /}illpa13nt l to 6ng kchthBQc c@a layout ch?a vi3 ny, 1apcont3nt l va @ n!i dung c>n hi;n thA c@avi39

    @ri*ntatinR vQi in3a1ayout, vic s~p D.p c:c vi3 l nm kL nhau th3o hngngang horc hng d]c, ta khai 6:o o1i3ntation ; ch]n s~p th3o ki;u no/ho1iontal*v31tical9

    Gravit(Hthu!c tnh ny ui Anh c:c vi3 nm 6n t1ong layout sF rt th3o vAt1 no so vQi layout /t1ung tEm, t1:i , phi, t1n dBQi89

    A*ightR ; c:c vi3 phEn chia t l din tch hi;n thA t1n mn h=nh /t l tnhth3o 3ight c@a tng vi3 t1n t_ng sb 3ight, c:c vi3 khng khai 6:o 3ight th= sFD3m ua idth v h3ight9

    - Fram!'ayot1am3ayout BCc dfng ; 6b t1 c:c bi tBCng th3o ki;u gibng nhB l c:c ay31 t1ong

    2hotoshop# $hJng bi tBCng no thu!c ay31 6n dBQi th= sF 6A ch3 khu

  • 7/24/2019 Giao Trinh 2014

    90/174

    chuy;n ?ng dHng sang m!t mn h=nh c" kch thBQc vQi mn h=nh thi.t k. 6an >u th= vA t1 c@ac:c bi tBCng sF khng cYn BCc chnh D:c nhB 6an >u#

    Trang !

  • 7/24/2019 Giao Trinh 2014

    91/174

    - !tali%!'ayot

    ayout ny cho phNp 6b t1 c:c idg3t th3o m!t t1Hc bi D?ng ngang horc d]c# ; rtBCc ng vA t1 th= c:c idg3t c>n BCc D:c Anh m!t mbi 1ng 6u!c no " vQi c:c idg3tkh:c# 7:c 1ng 6u!c ny l c:c 1ng 6u!c t1:i, phi, t1n, dBQi so vQi m!t idg3t horc so vQilayout pa13nt# 4a vo nhJng mbi 1ng 6u!c " m 3taliv3ayout cMng khng phH thu!c vo

    kch thBQc c@a sc133n thi.t 6A# $goi 1a, n" cYn c" Bu i;m l gip ti.t kim layout s dHngnhm mHc ch gim lBCng ti nguyn s dHng khi load \ng thPi ^y nhanh u: t1=nh D l#

    '=nh # ))R Kb t1 idg3t t1ong 3taliv3ayout

    - Tabl!'ayotayout ny BCc s dHng khi c>n thi.t k. m!t ta6l3 ch?a dJ liu horc c>n 6b t1 c:c

    idg3t th3o c:c hng /1o9 v c!t /column9# 7hng hn nhB, giao din c@a m!t chi.c m:y tnhIn gin horc m!t danh s:ch dJ liu#

    '=nh # )R Kb t1 idg3t t1ong Ta6l3ayout

    K!;!K!N Quttn

    Sidg3t 6utton l bi tBCng c" th; n"i l BCc dfng nhiLu nhu h.t c:c ?ngdHng 5nd1oid# ; thi.t k. giao din vQi m!t 6utton ta c" ) c:ch nhB sauR

    Trang !0

  • 7/24/2019 Giao Trinh 2014

    92/174

    Thit # bRng S'

    F '+nh

  • 7/24/2019 Giao Trinh 2014

    93/174

    and1oidRid]^_i'`,inear,ayout]

    and1oidRlayoutidth]matc!dparent]

    and1oidRlayouth3ight]matc!dparent]

    and1oidRo1i3ntation]"ertical]

    and1oidRpaddingKottom]^'imen`acti"ityd"erticaldmargin] and1oidRpadding3}t]^'imen`acti"ityd!oriontaldmargin]

    and1oidRpaddingight]^'imen`acti"ityd!oriontaldmargin]

    and1oidRpaddingTop]^'imen`acti"ityd"erticaldmargin]

    toolsRcont3Dt]6MainActi"ity]

    T3Dt%i3

    and1oidRid]^_i'`te8tFieX]

    and1oidRlayoutidth]rapdcontent] `` 2 rng ca c!u{i t\ng &ng "?i k!ungc!&a c!u{i6

    and1oidRlayouth3ight]rapdcontent]

    and1oidRt3Dt] string`t"X] `` ni 'ung ca c!u{i 2

  • 7/24/2019 Giao Trinh 2014

    94/174

    Thu!c tnh an'roi'+onClick]bt]BCc dfng ; n~m 6~t s kin click vo 6utton# Xhis kin click 6utton Dy 1a th= phBIng th?c 6t BCc khai 6:o t1ong thz thu!c tnh sF BCcg]i#

    F '+ 8W l. sL ki#n )nClick c!o Button " ' tr(n

    Mi#* *ap#*!ava i#* ngun chVnh ca chng trEnh`

    pac.ag*com3Dampl3#lin3a1layout

    iprtand1oid#os#Kundl3

    iprtand1oid#app#5ctivity

    iprtand1oid#vi3#U3nu

    iprtand1oid#vi3#%i3

    iprtand1oid#idg3t#Kutton

    iprtand1oid#idg3t#T3Dt%i3

    pu%#icc#assUain5ctivity *t*nds5ctivity

    privat*T3Dt%i3 tv+,tv) `` k!ai bo !ai te8tFie

    wWv311id3

    prt*ct*dvidon713at3/Kundl3 sav3dVnstanc30tat39

    sup*r#on713at3/sav3dVnstanc30tat39

    s3t7ont3nt%i3/#layout#acti"itydmain9 `` loa' layout

    tv+ /T3Dt%i39 }ind%i3KyVd/#id#te8tFie9 `` l9y 2za c! te8tFie b(nlayout gn c!o t"

    tv) /T3Dt%i39 }ind%i3KyVd/#id#te8tFieX9

    pu%#icvid6t+/%i3 v9

    Kutton U3 /Kutton9 v

    U3#s3tT3Dt/|t1ung hi3n|9

    0t1ing tamtv+#g3tT3Dt/9#to0t1ing/9 ** k!ai bo bi@n tm kiVu c!u{i"1 gnc!u{i trong t" c!o bi@n tm6

    tv+#s3tT3Dt/tv)#g3tT3Dt/9#to0t1ing/99 **c!u{i trong t"X 2

  • 7/24/2019 Giao Trinh 2014

    95/174

    }inal Kutton 6utton+ /Kutton9 }ind%i3KyVd/#id#6t+9

    **Anh ngha ist3n31 D l s kin nh

  • 7/24/2019 Giao Trinh 2014

    96/174

    and1oidRs1c]^'raable`logospkt]

    and1oidRid]^_i'`imageFie]

    *Vmag3%i3

    .od!*

    Vmag3%i3 img n3 Vmag3%i3/this9img#s3tVmag33sou1c3/#d1aa6l3#icon9

    K!;!K!4 List9i*B

    BCc s dHng ; th; hin m!t danh s:ch c:c thng tin th3o tng # Ui thng thBPngBCc load ln t m!t }il3 U O BCc cb Anh t1n " sb lBCng thng tin v loi thng tin c>nBCc th; hin#

    ; th; hin BCc m!t list thng tin ln m!t sc133n th= c>n phi c" y.u tb chnhR

    ,ata 2urc*H 4ata 0ou1c3 c" th; l m!t 511ayist, 'ashUap horc 6

  • 7/24/2019 Giao Trinh 2014

    97/174

    ^y l

  • 7/24/2019 Giao Trinh 2014

    98/174

    K!;!K!0 !ditT*t

    T1ong 5nd1oid bi tBCng ditT3Dt BCc s dHng nhB m!t T3Dti3ld horc m!t T3DtKoD# nIi nhp dJ liu vo /Vnput9 tBIng t:c giJa ngBPi dfng v ph>n mLm ?ng dHng#7ont1ol ny k.tha t T3Dt%i3 v cho phNp chnh sa dJ liu #

    ; s dHng ditT3Dt 1n ch s dHng ditT3Dt " lR

    and1oidRinputTyp3 8 s dHng ; D:c Anh phBIng th?c nhp cho ditT3Dt#7hnghn nhB khi 6n mubn m!t ; nhp passBrdhay m!t ; nhpai##TBIng t nhBT3Dt%i3, ta cMng phi l

  • 7/24/2019 Giao Trinh 2014

    99/174

    Chng 5

    5!1! Qi top ng dng &n gin5!1!1! Qi top 1

    k=u c_uH 7ho + 6utton chang3 v ) t3Dtvi3 ch?a ) chui Din cho v 6ui t1unghi3n# $h

  • 7/24/2019 Giao Trinh 2014

    100/174

    '=nh x# )R Thi.t k. giao din 6ng c:ch kNo th

    [ ch. ! ny ta ch]n pac.ag* p#r*r q %ai1Jchan q r*s #a(ut q%ai1activit(J%ai1Jain qgraphica# La(utq Mr Aidg*tsb sau " kNo th c:c, 6utton,t3Dtvi3 t1ong Mr Aidg*tsth vo giao din# sau " hiu chnh c:c thng sb t1ong ph>n

    prp*rti*snhBR t3Dtvi3, chiLu cao, 1!ng, ki;u chJ, cZ chJ, mu chJ, c:ch s~p D.p vA t1,8 7:ch )R Thi.t k. 6ng dYng lnh

    Ta vo vo pac.ag* p#r*r q %ai1Jchan qr*s #a(ut q %ai1activit(J%ai1Jainb sau" ch]n %ai1activit(J%ai1Jain k. 6n graphica# La(ut !

    Trang !!

  • 7/24/2019 Giao Trinh 2014

    101/174

    '=nh x# RThi.t k. giao din 6ng dYng lnh

    u

  • 7/24/2019 Giao Trinh 2014

    102/174

    '=nh x# RThi.t k. giao din 6ng dYng lnhT1ong ph>n ny ta nhp cod3 nhB sauR

    in3a1ayout DmlnsRand1oid]!ttp+``sc!emas6an'roi'6com`apk`res`an'roi']

    DmlnsRtools]!ttp+``sc!emas6an'roi'6com`tools]

    and1oidRid]^_i'`,inear,ayout]

    and1oidRlayoutidth]matc!dparent]

    and1oidRlayouth3ight]matc!dparent]

    and1oidRo1i3ntation]"ertical] and1oidRpaddingKottom]^'imen`acti"ityd"erticaldmargin]

    and1oidRpadding3}t]^'imen`acti"ityd!oriontaldmargin]

    and1oidRpaddingight]^'imen`acti"ityd!oriontaldmargin]

    and1oidRpaddingTop]^'imen`acti"ityd"erticaldmargin]

    toolsRcont3Dt]6BaidMainActi"ity]

    T3Dt%i3

    and1oidRid]^_i'`t"!ello]

    Trang 101

  • 7/24/2019 Giao Trinh 2014

    103/174

    and1oidRlayoutidth]rapdcontent]

    and1oidRlayouth3ight]rapdcontent]

    and1oidRt3Dt]^string`t"!ellodorl']*

    T3Dt%i3 and1oidRid]^_i'`t"ten]

    and1oidRlayoutidth]rapdcontent]

    and1oidRlayouth3ight]rapdcontent]

    and1oidRlayoutma1ginTop]'p]

    and1oidRt3Dt]^string`t"ten]*

    Kutton

    and1oidRid]^_i'`btc!ange]

    and1oidRlayoutidth]rapdcontent]

    and1oidRlayouth3ight]rapdcontent]

    and1oidRlayoutma1ginTop]'p]

    and1oidRt3Dt]^string`btc!ange]*

    *in3a1ayout

    Q;H vi$t cd* ch i#* ngun ava

    U]i tBIng t:c t1n giao din Lu BCc lp t1=nh ti ph>n ny#Ta vo pac.ag* p#r*r q src q *ap#*!%ai1Jchan q %ai1J+ain3ctivit( b ta BCcgiao din nhB sau R

    Trang 102

  • 7/24/2019 Giao Trinh 2014

    104/174

    '=nh x# R%i.t cod3 cho }il3 ngu\n Kai+Uain5ctivity#ava

    T1ong }il3 ngu\n ny ta nhp cod3 nhB sau R

    packag3 3Dampl3#6ai+chan

    impo1t and1oid#os#Kundl3

    impo1t and1oid#app#5ctivity

    impo1t and1oid#vi3#U3nu

    impo1t and1oid#vi3#%i3

    impo1t and1oid#idg3t#Kutton

    impo1t and1oid#idg3t#T3Dt%i3

    pu6lic class Kai+Uain5ctivity 3Dt3nds 5ctivity

    p1ivat3 Kutton 6tchang3

    p1ivat3 T3Dt%i3 tvt3n

    p1ivat3 T3Dt%i3 tvh3llo

    wWv311id3

    p1ot3ct3d void on713at3/Kundl3 sav3dVnstanc30tat39

    Trang 103

  • 7/24/2019 Giao Trinh 2014

    105/174

    sup31#on713at3/sav3dVnstanc30tat39

    s3t7ont3nt%i3/#layout#6ai+activity6ai+main9

    6tchang3 /Kutton9 }ind%i3KyVd/#id#6tchang39

    tvt3n /T3Dt%i39 }ind%i3KyVd/#id#tvt3n9

    tvh3llo /T3Dt%i39 }ind%i3KyVd/#id#tvh3llo96tchang3#s3tWn7lickist3n31/n3 %i3#Wn7lickist3n31/9

    wWv311id3

    pu6lic void on7lick/%i3 v9

    ** TW4W 5uto-g3n31at3d m3thod stu6

    0t1ing tamtvt3n#g3tT3Dt/9#to0t1ing/9

    tvt3n#s3tT3Dt/tvh3llo#g3tT3Dt/9#to0t1ing/99

    tvh3llo#s3tT3Dt/tam9

    9

    wWv311id3

    pu6lic 6ool3an on713at3WptionsU3nu/U3nu m3nu9

    ** Vn}lat3 th3 m3nu this a)dds it3ms to th3 action 6a1 i} it is p13s3nt#g3tU3nuVn}lat31/9#in}lat3/#m3nu#6ai+main, m3nu9

    13tu1n t1u3

    Q: H Qi=n dch ch>( ng dng

    X.t u

    Trang 104

  • 7/24/2019 Giao Trinh 2014

    106/174

    '=nh x# xRX.t u 6i tp

    5!1!;! Qi top ;k=u c_uH DEy dng m!t ?ng dHng c" ) ch?c n&ng callphon3 v 3mail

    [ giao din chnh n.u ch]n ch?c n&ng callphon3 th= chuy;n .n giao dincallphon3R

    $.u ngBPi dfng nhp ng sb in thoi mrc Anh v nh

  • 7/24/2019 Giao Trinh 2014

    107/174

    '=nh x# R jiao din chnh

    '=nh x# R jiao din callphon3

    Trang 106

  • 7/24/2019 Giao Trinh 2014

    108/174

    '=nh x# qRjiao din 3mailTrUnh tV c/c b$c ,+y dVng ng dng

    Q1H Thi$t .$ gia din

    jiao din chnhR

    To m!t p1o3ct vQi 5ctivity tn l mailcallphon3, layout tn l activitymain#Dml# 0au "nhp cod3 cho activitymain#DmlR

    '=nh x# +(RThi.t k. giao din

    3lativ3ayout DmlnsRand1oid]!ttp+``sc!emas6an'roi'6com`apk`res`an'roi']

    DmlnsRtools]!ttp+``sc!emas6an'roi'6com`tools]

    and1oidRlayoutidth]matc!dparent]

    Trang 107

  • 7/24/2019 Giao Trinh 2014

    109/174

    and1oidRlayouth3ight]matc!dparent]

    and1oidRpaddingKottom]^'imen`acti"ityd"erticaldmargin]

    and1oidRpadding3}t]^'imen`acti"ityd!oriontaldmargin]

    and1oidRpaddingight]^'imen`acti"ityd!oriontaldmargin]

    and1oidRpaddingTop]^'imen`acti"ityd"erticaldmargin] toolsRcont3Dt]6MainActi"ity]

    Kutton

    and1oidRid]^_i'`buttonX]

    and1oidRlayoutidth]rapdcontent]

    and1oidRlayouth3ight]rapdcontent]

    and1oidRlayoutalign2a13ntight]true]

    and1oidRlayoutalignTop]^_i'`button]

    and1oidRlayoutma1ginight]'p]

    and1oidRt3Dt]callp!one]*

    Kutton

    and1oidRid]^_i'`button]

    and1oidRlayoutidth]rapdcontent]

    and1oidRlayouth3ight]rapdcontent] and1oidRlayoutalign2a13nt3}t]true]

    and1oidRlayoutalign2a13ntTop]true]

    and1oidRlayoutma1ginTop]'p]

    and1oidRt3Dt]mail]*

    *3lativ3ayout

    Gia din ca##phn*

    Ta thc hin th3o h=nh nh nhB sau ; to activity v layout

    Trang 10

  • 7/24/2019 Giao Trinh 2014

    110/174

    '=nh x# ++RTo activity v layout cho giao din callphon3

    '=nh x# +)RTo activity v layout cho giao din callphon3

    Trang 10!

  • 7/24/2019 Giao Trinh 2014

    111/174

    '=nh x# +RTo activity v layout cho giao din callphon3

    $h

  • 7/24/2019 Giao Trinh 2014

    112/174

    Ta BCc giao din callphon3 nhB sauR

    '=nh x# +RTa nhp cod3 vo activitycallphon3#Dml

    3lativ3ayout DmlnsRand1oid|httpR**sch3mas#and1oid#com*apk*13s*and1oid|

    DmlnsRtools|httpR**sch3mas#and1oid#com*tools|

    and1oidRlayoutidth|matchpa13nt|

    and1oidRlayouth3ight|matchpa13nt|

    and1oidRpaddingKottom|wdim3n*activityv31ticalma1gin|

    and1oidRpadding3}t|wdim3n*activityho1iontalma1gin|

    and1oidRpaddingight|wdim3n*activityho1iontalma1gin|

    and1oidRpaddingTop|wdim3n*activityv31ticalma1gin|

    toolsRcont3Dt|#7allphon35ctivity|

    T3Dt%i3

    and1oidRid|wid*t3Dt%i3+|

    and1oidRlayoutidth|1apcont3nt| and1oidRlayouth3ight|1apcont3nt|

    and1oidRt3Dt|wst1ing*h3lloo1ld| *

    Kutton

    and1oidRid|wid*6utton)|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalignKas3lin3|wid*6utton+|

    Trang 111

  • 7/24/2019 Giao Trinh 2014

    113/174

    and1oidRlayoutalignKottom|wid*6utton+|

    and1oidRlayoutalign2a13ntight|t1u3|

    and1oidRlayoutma1ginight|(dp|

    and1oidRt3Dt|6lack| *

    Kutton

    and1oidRid|wid*6utton+|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalign3}t|wid*3ditT3Dt+|

    and1oidRlayoutc3nt31%31tical|t1u3|

    and1oidRt3Dt|call| *

    T3Dt%i3

    and1oidRid|wid*t3Dt%i3)|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayouta6ov3|wid*6utton)|

    and1oidRlayoutalign3}t|wid*6utton+|

    and1oidRlayoutalignight|wid*3ditT3Dt+| and1oidRt3Dt| | *

    ditT3Dt

    and1oidRid|wid*3ditT3Dt+|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalign3}t|wid*tv+|

    and1oidRlayout63lo|wid*tv+|

    and1oidRlayoutma1ginTop|(dp|

    and1oidR3ms|+(|

    and1oidRinputTyp3|t3Dtmail5dd13ss| *

    *3lativ3ayout

    T> gia din *ai#

    Trang 112

  • 7/24/2019 Giao Trinh 2014

    114/174

    7:c 6BQc lm thBIng t nhB t1n ; to activity v layout cho giao din 3mail, ta ch c>n _itn activity l mail5ctivity v tn layout l activity3mail#Dml# Ta nhp cod3 t1ongactivit(J*ai#J!#nhB sauR

    3lativ3ayout DmlnsRand1oid|httpR**sch3mas#and1oid#com*apk*13s*and1oid|

    DmlnsRtools|httpR**sch3mas#and1oid#com*tools|

    and1oidRlayoutidth|matchpa13nt|

    and1oidRlayouth3ight|matchpa13nt|

    and1oidRpaddingKottom|wdim3n*activityv31ticalma1gin|

    and1oidRpadding3}t|wdim3n*activityho1iontalma1gin|

    and1oidRpaddingight|wdim3n*activityho1iontalma1gin|

    and1oidRpaddingTop|wdim3n*activityv31ticalma1gin|

    toolsRcont3Dt|#mail5ctivity|

    T3Dt%i3

    and1oidRid|wid*t3Dt%i3+|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRt3Dt|wst1ing*nhap3mail| *

    ditT3Dt

    and1oidRid|wid*3ditT3Dt+|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayout63lo|wid*t3Dt%i3+|

    and1oidRlayoutma1ginTop|)dp|

    and1oidR3ms|+(|

    and1oidRinputTyp3|t3Dtmail5dd13ss|

    13u3stocus *

    *ditT3Dt

    T3Dt%i3

    and1oidRid|wid*t3Dt%i3)|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayouta6ov3|wid*6utton+|

    Trang 113

  • 7/24/2019 Giao Trinh 2014

    115/174

    and1oidRlayoutalign2a13nt3}t|t1u3|

    and1oidRlayoutalignight|wid*6utton)|

    and1oidRlayoutma1ginKottom|)xdp|

    and1oidRt3Dt| | *

    Kutton

    and1oidRid|wid*6utton)|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalign2a13ntKottom|t1u3|

    and1oidRlayoutalignight|wid*3ditT3Dt+|

    and1oidRlayoutma1ginKottom|++xdp|

    and1oidRt3Dt|Klack| *

    Kutton

    and1oidRid|wid*6utton+|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalignKas3lin3|wid*6utton)|

    and1oidRlayoutalignKottom|wid*6utton)| and1oidRlayoutalignight|wid*t3Dt%i3+|

    and1oidRt3Dt|s3nd| *

    *3lativ3ayout

    Ta BCc giao din nhB sauR

    Trang 114

  • 7/24/2019 Giao Trinh 2014

    116/174

    '=nh x# +xRThi.t k. giao din 3mail

    Q; Hvi$t cd* ch i#* ngun ava

    Bu R khi ta to p1o3ct th= khi " ta O to m!t activity v m!t layout, " l giao din chnhc@a chBIng t1=nh#

    7od3 t1ong giao din chnh R 7h]n Uain5ctivity#ava ; nhp cod3 vo h=nh 6n R

    '=nh x# +R%i.t cod3 cho }il3 Uain5ctivity#ava

    packag3 com3Dampl3#3mailcallphon3

    Trang 115

  • 7/24/2019 Giao Trinh 2014

    117/174

    impo1t and1oid#os#Kundl3impo1t and1oid#app#5ctivityimpo1t and1oid#cont3nt#Vnt3ntimpo1t and1oid#vi3#U3nuimpo1t and1oid#vi3#%i3impo1t and1oid#idg3t#Kutton

    pu6lic class Uain5ctivity 3Dt3nds 5ctivity

    wWv311id3p1ot3ct3d void on713at3/Kundl3 sav3dVnstanc30tat39

    sup31#on713at3/sav3dVnstanc30tat39s3t7ont3nt%i3/#layout#activitymain9**DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD

    DDDDDDDDDDDD

    Kutton 6t3mail/Kutton9}ind%i3KyVd/#id#6utton+96t3mail#s3tWn7lickist3n31/n3 %i3#Wn7lickist3n31/9

    wWv311id3pu6lic void on7lick/%i3 v9

    ** TW4W 5uto-g3n31at3d m3thod stu6Vnt3nt 6n3 Vnt3nt/Uain5ctivity#this,mail5ctivity#class9sta1t5ctivity/69

    9

    **DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD

    Kutton 6tcallphon3/Kutton9}ind%i3KyVd/#id#6utton)96tcallphon3#s3tWn7lickist3n31/n3 %i3#Wn7lickist3n31/9

    wWv311id3pu6lic void on7lick/%i3 v9

    ** TW4W 5uto-g3n31at3d m3thod stu6Vnt3nt an3 Vnt3nt/Uain5ctivity#this,7allphon35ctivity#class9sta1t5ctivity/a9

    9

    wWv311id3pu6lic 6ool3an on713at3WptionsU3nu/U3nu m3nu9

    ** Vn}lat3 th3 m3nu this adds it3ms to th3 action 6a1 i} it is p13s3nt#g3tU3nuVn}lat31/9#in}lat3/#m3nu#main, m3nu913tu1n t1u3

    Trang 116

  • 7/24/2019 Giao Trinh 2014

    118/174

    7od3 cho giao din callphon3 R 7h]n 7allphon35ctivity#ava

    '=nh x# +R%i.t cod3 cho }il3 7allphon35ctivity#ava

    packag3 com3Dampl3#3mailcallphon3

    impo1t and1oid#app#5ctivityimpo1t and1oid#cont3nt#Vnt3ntimpo1t and1oid#os#Kundl3impo1t and1oid#vi3#U3nuimpo1t and1oid#vi3#%i3impo1t and1oid#idg3t#Kuttonimpo1t and1oid#idg3t#ditT3Dtimpo1t and1oid#idg3t#T3Dt%i3

    pu6lic class 7allphon35ctivity 3Dt3nds 5ctivity

    p1ivat3 ditT3Dt 3ditmap1ivat3 T3Dt%i3 tvthong6ao

    wWv311id3p1ot3ct3d void on713at3/Kundl3 sav3dVnstanc30tat39

    sup31#on713at3/sav3dVnstanc30tat39s3t7ont3nt%i3/#layout#activitycallphon393ditma /ditT3Dt9 }ind%i3KyVd/#id#3ditT3Dt+9tvthong6ao/T3Dt%i39}ind%i3KyVd/#id#t3Dt%i3+9

    Trang 117

  • 7/24/2019 Giao Trinh 2014

    119/174

    **DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD

    Kutton 6t6lack/Kutton9}ind%i3KyVd/#id#6utton)96t6lack#s3tWn7lickist3n31/n3 %i3#Wn7lickist3n31/9

    wWv311id3pu6lic void on7lick/%i3 v9

    ** TW4W 5uto-g1at3d m3thod stu6Vnt3nt a n3 Vnt3nt

    /7allphon35ctivity#this,Uain5ctivity#class9sta1t5ctivity/a9

    9**DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD

    DDDDDDDDDDDDDDDDDDDKutton 6tdangnhap/Kutton9}ind%i3KyVd/#id#6utton+9

    6tdangnhap#s3tWn7lickist3n31/n3 %i3#Wn7lickist3n31/9 wWv311id3

    pu6lic void on7lick/%i3 v9 ** TW4W 5uto-g3n31at3d m3thod stu60t1ing matkhau|(+xxxxxx|0t1ing ma3ditma#g3tT3Dt/9#to0t1ing/9int tammatkhau#compa13To/ma9i} /tam(9 tvthong6ao#s3tT3Dt/|6an dang goi|93ls3 tvthong6ao#s3tT3Dt/|so dang goi khong dung |

    |vui long ki3m t1a lai|9

    9

    Cd* ch gia din *ai#Hch]n mail5ctivity#ava

    Trang 11

  • 7/24/2019 Giao Trinh 2014

    120/174

    '=nh x# +qR %i.t cod3 cho }il3 ngu\n mail5ctivity#ava

    packag3 com3Dampl3#3mailcallphon3

    impo1t and1oid#os#Kundl3

    impo1t and1oid#app#5ctivity

    impo1t and1oid#cont3nt#Vnt3nt

    impo1t and1oid#vi3#U3nu

    impo1t and1oid#vi3#%i3

    impo1t and1oid#idg3t#Kutton

    impo1t and1oid#idg3t#ditT3Dt

    impo1t and1oid#idg3t#T3Dt%i3

    pu6lic class mail5ctivity 3Dt3nds 5ctivity

    wWv311id3

    p1ot3ct3d void on713at3/Kundl3 sav3dVnstanc30tat39

    sup31#on713at3/sav3dVnstanc30tat39

    s3t7ont3nt%i3/#layout#activity3mail9

    }inal ditT3Dt 3dit3mail/ditT3Dt9}ind%i3KyVd/#id#3ditT3Dt+9

    }inal T3Dt%i3 tv+/T3Dt%i39}ind%i3KyVd/#id#t3Dt%i3)9

    Trang 11!

  • 7/24/2019 Giao Trinh 2014

    121/174

  • 7/24/2019 Giao Trinh 2014

    122/174

    5!1!:! Qi top :

    k=u c_uH 4fng + nt nh

  • 7/24/2019 Giao Trinh 2014

    123/174

    '=nh x# )+RThi.t k. giao din

    in3a1ayout DmlnsRand1oid|httpR**sch3mas#and1oid#com*apk*13s*and1oid|

    DmlnsRtools|httpR**sch3mas#and1oid#com*tools|

    and1oidRid|wid*in3a1ayout+|

    and1oidRlayoutidth|matchpa13nt|

    and1oidRlayouth3ight|matchpa13nt|

    and1oidRo1i3ntation|v31tical|

    and1oidRpaddingKottom|wdim3n*activityv31ticalma1gin|

    and1oidRpadding3}t|wdim3n*activityho1iontalma1gin|

    and1oidRpaddingight|wdim3n*activityho1iontalma1gin|

    and1oidRpaddingTop|wdim3n*activityv31ticalma1gin|

    toolsRcont3Dt|#Uain5ctivity|

    T3Dt%i3 and1oidRid|wid*t3Dt%i3+|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutg1avity|c3nt31|

    and1oidRt3Dt7olo1|((}}((|

    and1oidRt3Dt0i3|)sp| *

    Vmag3%i3 and1oidRid|wid*imag3%i3+|

    Trang 122

  • 7/24/2019 Giao Trinh 2014

    124/174

  • 7/24/2019 Giao Trinh 2014

    125/174

    packag3 com3Dampl3#shohinh

    impo1t and1oid#os#Kundl3

    impo1t and1oid#app#5ctivity

    impo1t and1oid#vi3#U3nuimpo1t and1oid#vi3#%i3

    impo1t and1oid#idg3t#Kutton

    impo1t and1oid#idg3t#Vmag3%i3

    impo1t and1oid#idg3t#T3Dt%i3

    pu6lic class Uain5ctivity 3Dt3nds 5ctivity

    Vmag3%i3 iv

    Kutton 6t

    T3Dt%i3 tv+

    int manghinh#d1aa6l3#hoa, ** khai 6:o mng v khai 6:o 6i.n vit1i l 6i.n cHc 6!

    #d1aa6l3#m3o,

    #d1aa6l3#chimcancut,

    #d1aa6l3#samac

    int vit1i (

    long i(wWv311id3

    p1ot3ct3d void on713at3/Kundl3 sav3dVnstanc30tat39

    sup31#on713at3/sav3dVnstanc30tat39

    s3t7ont3nt%i3/#layout#activitymain9

    iv/Vmag3%i39}ind%i3KyVd/#id#imag3%i3+9

    6t/Kutton9}ind%i3KyVd/#id#6utton+9

    tv+/T3Dt%i39}ind%i3KyVd/#id#t3Dt%i3+9

    6t#s3tWn7lickist3n31/n3 %i3#Wn7lickist3n31/9

    wWv311id3

    pu6lic void on7lick/%i3 v9

    **TW4W 5uto-g3n31at3d m3thod stu6

    vit1i

    i}/vit1imanghinh#l3ngth9

    Trang 124

  • 7/24/2019 Giao Trinh 2014

    126/174

    vit1i(

    iv#s3tVmag33sou1c3/manghinhvit1i9

    sitch /vit1i9

    cas3 ( R tv+#s3tT3Dt/|nh hoa|9613ak

    cas3 + R tv+#s3tT3Dt/|nh mo|9613akcas3 ) R tv+#s3tT3Dt/|nh chim can cut|9613ak

    cas3 R tv+#s3tT3Dt/|nh sa mc|9613ak

    9

    wWv311id3

    pu6lic 6ool3an on713at3WptionsU3nu/U3nu m3nu9

    ** Vn}lat3 th3 m3nu this adds it3ms to th3 action 6a1 i} it is p13s3nt#

    g3tU3nuVn}lat31/9#in}lat3/#m3nu#main, m3nu9

    13tu1n t1u3

    Trang 125

  • 7/24/2019 Giao Trinh 2014

    127/174

    5!1!N! Qi top N

    k=u c_uH U:y tnh g\m phNp tnh c!ng, t1, nhEn, chia hi;n thA phNp tnh v k.t u t1nt3Dtvi3#

    '=nh x# )Rjiao din 6i tp

    Yr%n! tL cc b?c t!Lc !i#n

    Q1H Thi$t .$ gia din

    Ta to m!t p1o3ct c" tn l Uaytinh, sau " i to giao din nhB h=nh t1n

    Trang 126

  • 7/24/2019 Giao Trinh 2014

    128/174

    '=nh x# )RThi.t k. giao din

    Cd* ch i#* activit(Jain!#

    3lativ3ayout DmlnsRand1oid|httpR**sch3mas#and1oid#com*apk*13s*and1oid|

    DmlnsRtools|httpR**sch3mas#and1oid#com*tools|

    and1oidRlayoutidth|matchpa13nt|

    and1oidRlayouth3ight|matchpa13nt| and1oidRpaddingKottom|wdim3n*activityv31ticalma1gin|

    and1oidRpadding3}t|wdim3n*activityho1iontalma1gin|

    and1oidRpaddingight|wdim3n*activityho1iontalma1gin|

    and1oidRpaddingTop|wdim3n*activityv31ticalma1gin|

    toolsRcont3Dt|#Uain5ctivity|

    T3Dt%i3

    and1oidRid|wid*t3Dt%i3)|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutc3nt31'o1iontal|t1u3|

    and1oidRt3Dt|wst1ing*h3lloo1ld| *

    T3Dt%i3

    and1oidRid|wid*t3Dt%i3+| and1oidRlayoutidth|(dp|

    Trang 127

  • 7/24/2019 Giao Trinh 2014

    129/174

    and1oidRlayouth3ight|(dp|

    and1oidRlayoutalign2a13nt3}t|t1u3|

    and1oidRlayout63lo|wid*t3Dt%i3)|

    and1oidRlayoutma1ginTop|+dp|

    and1oidRt3Dt|wst1ing*tvsoa| *

    T3Dt%i3

    and1oidRid|wid*t3Dt%i3|

    and1oidRlayoutidth|(dp|

    and1oidRlayouth3ight|(dp|

    and1oidRlayoutalign2a13nt3}t|t1u3|

    and1oidRlayout63lo|wid*t3Dt%i3+|

    and1oidRlayoutma1ginTop|)dp|

    and1oidRt3Dt|wst1ing*tvso6| *

    ditT3Dt

    and1oidRid|wid*3ditT3Dt)|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalign3}t|wid*t3Dt%i3)| and1oidRlayoutalignTop|wid*t3Dt%i3|

    and1oidR3ms|+(|

    and1oidRinputTyp3|num631| *

    ditT3Dt

    and1oidRid|wid*3ditT3Dt+|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalign3}t|wid*3ditT3Dt)|

    and1oidRlayoutalignTop|wid*t3Dt%i3+|

    and1oidR3ms|+(|

    and1oidRinputTyp3|num631| *

    Kutton

    and1oidRid|wid*cong|

    Trang 12

  • 7/24/2019 Giao Trinh 2014

    130/174

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalignKas3lin3|wid*nhan|

    and1oidRlayoutalignKottom|wid*nhan|

    and1oidRlayouttoightW}|wid*t3Dt%i3)| and1oidRt3Dt|wst1ing*6tcong| *

    Kutton

    and1oidRid|wid*nhan|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalign3}t|wid*t3Dt%i3|

    and1oidRlayoutalign2a13ntKottom|t1u3|

    and1oidRt3Dt|wst1ing*6tnhan| *

    T3Dt%i3

    and1oidRid|wid*t3Dt%i3|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalign3}t|wid*t3Dt%i3| and1oidRlayoutc3nt31%31tical|t1u3|

    and1oidRt3Dt|wst1ing*tvk| *

    Kutton

    and1oidRid|wid*chia|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayouta6ov3|wid*nhan|

    and1oidRlayoutalignight|wid*nhan|

    and1oidRlayoutma1ginKottom|(dp|

    and1oidRt3Dt|wst1ing*6tchia| *

    Kutton

    and1oidRid|wid*t1u|

    and1oidRlayoutidth|1apcont3nt|

    Trang 12!

  • 7/24/2019 Giao Trinh 2014

    131/174

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalignKas3lin3|wid*chia|

    and1oidRlayoutalignKottom|wid*chia|

    and1oidRlayouttoightW}|wid*t3Dt%i3)|

    and1oidRt3Dt|wst1ing*6tt1u| *

    T3Dt%i3

    and1oidRid|wid*t3Dt%i3|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalignKottom|wid*t3Dt%i3|

    and1oidRlayoutalign3}t|wid*3ditT3Dt)|

    and1oidRlayoutalignight|wid*3ditT3Dt)| *

    *3lativ3ayout

    Q; H vi$t cd* ch i#* ngun ava

    Trang 130

  • 7/24/2019 Giao Trinh 2014

    132/174

    '=nh x#)R 7od3 cho }il3 ngu\n Uain5ctivity#avapackag3 com3Dampl3#maytinh

    impo1t and1oid#app#5ctivity

    impo1t and1oid#os#Kundl3

    impo1t and1oid#vi3#U3nu

    impo1t and1oid#vi3#%i3

    impo1t and1oid#vi3#%i3#Wn7lickist3n31

    impo1t and1oid#idg3t#Kutton

    impo1t and1oid#idg3t#ditT3Dt

    impo1t and1oid#idg3t#T3Dt%i3

    pu6lic class Uain5ctivity 3Dt3nds 5ctivity

    p1ivat3 Kutton 6tcong,6tt1u,6tnhan,6tchia

    p1ivat3 ditT3Dt 3ditsoa, 3ditso6

    p1ivat3 T3Dt%i3 tvk

    Trang 131

  • 7/24/2019 Giao Trinh 2014

    133/174

    Wn7lickist3n31 tinh n3 Wn7lickist3n31/9

    wWv311id3

    pu6lic void on7lick/%i3 a1g(9

    0t1ing sa3ditsoa#g3tT3Dt/9#to0t1ing/9

    0t1ing s63ditso6#g3tT3Dt/9#to0t1ing/9dou6l3 a4ou6l3#pa1s34ou6l3/sa9

    dou6l3 64ou6l3#pa1s34ou6l3/s69

    0t1ing k||

    sitch/a1g(#g3tVd/99

    cas3 #id#congR

    ka||6||/a69

    tvk#s3tT3Dt/k9

    613ak

    cas3 #id#t1uR

    ka|-|6||/a-69

    tvk#s3tT3Dt/k9

    613akcas3 #id#nhanR

    ka||6||/a69

    tvk#s3tT3Dt/k9

    613ak

    cas3 #id#chiaR

    ka|*|6||/a*69

    tvk#s3tT3Dt/k9

    613ak

    wWv311id3

    p1ot3ct3d void on713at3/Kundl3 sav3dVnstanc30tat39

    sup31#on713at3/sav3dVnstanc30tat39

    Trang 132

  • 7/24/2019 Giao Trinh 2014

    134/174

    s3t7ont3nt%i3/#layout#activitymain9

    6tcong/Kutton9}ind%i3KyVd/#id#cong9

    6tt1u/Kutton9}ind%i3KyVd/#id#t1u9

    6tnhan/Kutton9}ind%i3KyVd/#id#nhan96tchia/Kutton9}ind%i3KyVd/#id#chia9

    3ditsoa/ditT3Dt9}ind%i3KyVd/#id#3ditT3Dt+9

    3ditso6/ditT3Dt9}ind%i3KyVd/#id#3ditT3Dt)9

    tvk/T3Dt%i39}ind%i3KyVd/#id#t3Dt%i39

    6tcong#s3tWn7lickist3n31/tinh9

    6tt1u#s3tWn7lickist3n31/tinh9

    6tnhan#s3tWn7lickist3n31/tinh9

    6tchia#s3tWn7lickist3n31/tinh9

    *%i3#Wn7lickist3n31/9

    wWv311id3

    pu6lic void on7lick/%i3 v9

    ** TW4W 5uto-g3n31at3d m3thod stu6

    0t1ing sa3ditsoa#g3tT3Dt/9#to0t1ing/9

    0t1ing s63ditso6#g3tT3Dt/9#to0t1ing/9int aVnt3g31#pa1s3Vnt/sa9

    int 6Vnt3g31#pa1s3Vnt/s69

    0t1ing k||

    ka||6||/a69

    3ditk#s3tT3Dt/k9

    9 *

    wWv311id3

    pu6lic 6ool3an on713at3WptionsU3nu/U3nu m3nu9

    ** Vn}lat3 th3 m3nu this adds it3ms to th3 action 6a1 i} it is p13s3nt#

    g3tU3nuVn}lat31/9#in}lat3/#m3nu#main, m3nu9

    13tu1n t1u3

    5!1!K! Qi top K

    Trang 133

  • 7/24/2019 Giao Trinh 2014

    135/174

  • 7/24/2019 Giao Trinh 2014

    136/174

    '=nh x# )R Thi.t k. giao din

    -hop cd* ch i#* #a(ut activit(Jain!#3lativ3ayout DmlnsRand1oid|httpR**sch3mas#and1oid#com*apk*13s*and1oid|

    DmlnsRtools|httpR**sch3mas#and1oid#com*tools|

    and1oidRlayoutidth|matchpa13nt|

    and1oidRlayouth3ight|matchpa13nt|

    and1oidRpaddingKottom|wdim3n*activityv31ticalma1gin|

    and1oidRpadding3}t|wdim3n*activityho1iontalma1gin|

    and1oidRpaddingight|wdim3n*activityho1iontalma1gin|

    and1oidRpaddingTop|wdim3n*activityv31ticalma1gin|

    toolsRcont3Dt|#Uain5ctivity|

    T3Dt%i3

    and1oidRid|wid*tv+|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRt3Dt|wst1ing*h3lloo1ld| *

    Trang 135

  • 7/24/2019 Giao Trinh 2014

    137/174

    ditT3Dt

    and1oidRid|wid*3ditT3Dt+|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalign3}t|wid*tv+|

    and1oidRlayout63lo|wid*tv+|

    and1oidRlayoutma1ginTop|(dp|

    and1oidR3ms|+(|

    and1oidRinputTyp3|t3Dtmail5dd13ss|

    and1oidRt3Dt0tyl3|italic|

    13u3stocus * *ditT3Dt

    Kutton

    and1oidRid|wid*6utton+|

    and1oidRlayoutidth|1apcont3nt|

    and1oidRlayouth3ight|1apcont3nt|

    and1oidRlayoutalign3}t|wid*3ditT3Dt+|

    and1oidRlayout63lo|wid*3ditT3Dt+|

    and1oidRlayoutma1gin3}t|+dp|

    and1oidRlayoutma1ginTop|)dp|

    and1oidRt3Dt| $T| *

    *3lativ3ayout

    Q;H vi$t cd* ch i#* ngun ava

    Trang 136

  • 7/24/2019 Giao Trinh 2014

    138/174

    '=nh x# )R %i.t cod3 cho }il3 ngu\n Uain5ctivity#ava

    **43cimalo1mat dc}n3 43cimalo1mat/|(#|9

    ** 0t1ing kdc}#}o1mat/a9

    **hm chuy;n kiu so sang ki3u chuoi d3 Duat 1a t3Dt6oD

    **int aVnt3g31#pa1s3Vnt/sa9lay so t1ong chuoi t3D6oD

    **int tama#compa13To/69 n.u chui a chui 6 th= tam ( , tam ki3u int3g31

    packag3 com3Dampl3#ktpasso1d

    impo1t ava#t3Dt#43cimalo1mat

    impo1t and1oid#os#Kundl3

    impo1t and1oid#13nd31sc1ipt#4ou6l3

    impo1t and1oid#t3Dt#dita6l3

    impo1t and1oid#app#5ctivity

    impo1t and1oid#vi3#U3nu

    impo1t and1oid#vi3#%i3

    impo1t and1oid#idg3t#Kutton

    impo1t and1oid#idg3t#ditT3Dt

    Trang 137

  • 7/24/2019 Giao Trinh 2014

    139/174

    impo1t and1oid#idg3t#T3Dt%i3

    pu6lic class Uain5ctivity 3Dt3nds 5ctivity

    p1ivat3 ditT3Dt 3ditma

    p1ivat3 T3Dt%i3 tv+

    p1ivat3 Kutton 6t3nt31p1ivat3 cha1 6ui

    wWv311id3

    p1ot3ct3d void on713at3/Kundl3 sav3dVnstanc30tat39

    sup31#on713at3/sav3dVnstanc30tat39

    s3t7ont3nt%i3/#layout#activitymain9

    6t3nt31 /Kutton9 }ind%i3KyVd/#id#6utton+9

    tv+ /T3Dt%i39 }ind%i3KyVd/#id#tv+9

    3ditma /ditT3Dt9 }ind%i3KyVd/#id#3ditT3Dt+9

    }inal 0t1ing tam) /|6an dang nhap thanh cong|9

    }inal 0t1ing tam+ /|6an dang nhap chua dung|9

    ** }inal dou6l3 6 4ou6l3#pa1s34ou6l3/ma69

    6t3nt31#s3tWn7lickist3n31/n3 %i3#Wn7lickist3n31/9

    wWv311id3pu6lic void on7lick/%i3 v9

    0t1ing ma 3ditma#g3tT3Dt/9#to0t1ing/9

    ** int aVnt3g31#pa1s3Vnt/3ditma#g3tT3Dt/9#to0t1ing/99

    **43cimalo1mat dc}n3 43cimalo1mat/|(#|9

    ** 0t1ing kdc}#}o1mat/a9

    0t1ing 6|+)x|

    ** 0t1ing c|hi3n|

    int tamma#compa13To/69

    i} /tam(9 tv+#s3tT3Dt/tam)9

    3ls3 tv+#s3tT3Dt/tam+9

    ** 3ls3

    ** tv+#s3tT3Dt/tam+9

    Trang 13

  • 7/24/2019 Giao Trinh 2014

    140/174

    9

    wWv311id3

    pu6lic 6ool3an on713at3WptionsU3nu/U3nu m3nu9 ** Vn}lat3 th3 m3nu this adds it3ms to th3 action 6a1 i} it is p13s3nt#

    g3tU3nuVn}lat31/9#in}lat3/#m3nu#main, m3nu9

    13tu1n t1u3

    pu6lic T3Dt%i3 g3tTv+/9

    13tu1n tv+

    pu6lic void s3tTv+/T3Dt%i3 tv+9

    this#tv+ tv+

    5!1!5! Qi top 5

    k=u c_u H R 6i tp ny hBQng den c:ch s dHng m3nukhi nh

  • 7/24/2019 Giao Trinh 2014

    141/174

    '=nh x# )q Rjiao din 5ndoid

    '=nh x# ( Rjiao din 5ndoid

    Trang 140

  • 7/24/2019 Giao Trinh 2014

    142/174

    '=nh x# + Rjiao din 5ndoid

    Yr%n! tL cc b?c t!Lc !i#n

    Q1H thi$t .$ gia din

    Ta to p1o3ct c" tn l %dm3nu, sau " vo 13s m3nu to }il3 mym3nu

    Trang 141

  • 7/24/2019 Giao Trinh 2014

    143/174

  • 7/24/2019 Giao Trinh 2014

    144/174

  • 7/24/2019 Giao Trinh 2014

    145/174

    and1oidRlayouth3ight]rapdcontent]

    and1oidRt3Dt]^string`!ellodorl']*

    *3lativ3ayout

    Q: H 9i$t cd* ch i#* ngun ava

    '=nh x# R 7od3 cho }il3 ngu\n Uain5ctivity#ava

    packag3 com3Dampl3#vdm3nu

    impo1t and1oid#os#Kundl3

    impo1t and1oid#app#5ctivity

    impo1t and1oid#vi3#U3nu

    impo1t and1oid#vi3#U3nuVt3m

    pu6lic class Uain5ctivity 3Dt3nds 5ctivity

    wWv311id3p1ot3ct3d void on713at3/Kundl3 sav3dVnstanc30tat39

    sup31#on713at3/sav3dVnstanc30tat39

    s3t7ont3nt%i3/#layout#activitymain9

    wWv311id3

    pu6lic 6ool3an on713at3WptionsU3nu/U3nu m3nu9

    g3tU3nuVn}lat31/9

    #in}lat3/#m3nu#mym3nu, m3nu9

    Trang 144

  • 7/24/2019 Giao Trinh 2014

    146/174

    13tu1n t1u3

    wWv311id3

    pu6lic 6ool3an onWptionsVt3m03l3ct3d/U3nuVt3m it3m9

    sitch /it3m#g3tVt3mVd/99

    cas3 #id#D3mdslopR

    ** l D3m danh s:ch sinh vin

    613ak

    cas3 #id#lop+R

    613ak

    cas3 #id#lop)R

    613ak

    cas3 #id#lopR

    613ak

    cas3 #id#D3mdssvR

    ** l D3m danh s:ch sinh vin

    613ak

    cas3 #id#it3m+R613ak

    cas3 #id#it3m)R

    613ak

    cas3 #id#it3mR

    613ak

    13tu1n sup31#onWptionsVt3m03l3ct3d/it3m9

    il3 m3nu #Dml

    m3nu DmlnsRand1oid]!ttp+``sc!emas6an'roi'6com`apk`res`an'roi']

    it3m

    and1oidRid]^_i'`actiondsettings]

    and1oidRo1d31Vn7at3go1y]]

    and1oidRsho5s5ction]ne"er]

    and1oidRtitl3]^string`actiondsettings]*

    Trang 145

  • 7/24/2019 Giao Trinh 2014

    147/174

    *m3nu

    5!;! ng dng nlng ca

    T1ong gi:o t1=nh ny ch@ y.u hBQng den ngBPi ]c i t lEp t1=nh cI 6n l c:c ?ng dHngnh, to giao din,8.n nEng cao l c:c ?ng dHng iLu khi;n thi.t 6A# $goi 1a cMng cYn 1n l thi.t6A lin lc, gii t1 ngh3 nh=n m giP Ey khi c>m t1n tay thi.t 6A di !ng thng minh 6n c"th; lm BCc 1

  • 7/24/2019 Giao Trinh 2014

    148/174

  • 7/24/2019 Giao Trinh 2014

    149/174

    7hEn +x / $TVj'T9R >u 1a dfng ; ch 6:o mng k.t nbi BCc h thbng#

    7hEn + /2SX9R chEn ny dfng ; iLu khi;n h thbng 6t*t~t

    7hEn +, )(, )), ), )x /XK79R 6n phm#

    7hEn +q /0T5T09 R 6:o t1=nh t1ng cng vic#

    7hEn )+, /j2VW9 R$o1mal input*output po1t 7hEn ) /K9 R >u 1a chung

    7hEn ) / 0VU %779 R ngu\n cung c

    u 1a dJ liu chEn sim

    7hEn + / 0VU 7X 9R chEn thPi gian c@a sim

    7hEn /0VU 20$7 9 RchEn dY t=m mng

    7hEn /4749R 4ata ca11i31 d3t3ction

    7hEn /4V02 709R

    7hEn ( /4V02 7X9 R

    7hEn ) /4V02 45T5 9 R

    7hEn /4V02 4*7 9R

    7hEn x / 4V02 0T 9R chEn 1a giao ti.p vQi mng h=nh

    7hEn q / 4T 9 R chEn >u cubi dJ liu

    7hEn + /4 9 R chEn nhn dJ liu 7hEn /T4 9 R chEn t1uyLn dJ liu

    7hEn / T0 9 R 3u3st to s3nd

    7hEn / 7T0 9 R 7l3a1 to s3nd

    7hEn q / V 9 R ing indicato1

    7hEn / 4Kj 4 9 R >u 1a dfng ; iLu chnh t1ong nhn dJ liu

    7hEn ( / 4Kj T4 9 R >u 1a dfng ; iLu chnh t1ong t1uyLn dJ liu

    7hEn +, + / 5j$4 9 R chEn maD

    7hEn / 02X+29, / 02X+$ 9 R chEn output

    7hEn / UV7+2 9, x / UV7+$ 9 R chEn input

    7hEn / 02X)2 9, q / 02X)$9 R chEn output

    7hEn / UV7)2 9, x( / UV7)$ 9 RchEn input

    c! 2 dng top #nh at ca du#* si://c8

    T1ong ?ng dHng ta ch c>n s dHng c:c tp lnh sauR

    Cc #nh .h|i t> G2+ +du#* 2i://CH

    nh 5Tc1

    Trang 14

  • 7/24/2019 Giao Trinh 2014

    150/174

    $.u lnh thc hin Cc th= t1 vLR

    Wk

    K~t >u thc hin c:c lnh ti.p th3o#

    $.u lnh khng thc hin BCc th= t1 vL dngR

    7U0 W 311 nh 5T7Ujmod3 c1

    $.u lnh thc hin Cc th= t1 vLR

    Wk

    mod3 R ( dng dJ liu 24

    + dng dJ liu ki;u t3Dt

    $.u lnh khng thc hin BCc th= t1 vL dngR

    7U0 W 311nh 5TSn

    $.u lnh thc hin Cc th= t1 vLR

    Wk

    Bu c

  • 7/24/2019 Giao Trinh 2014

    151/174

    nh ]c tin nh~nR

    5T 7Ujind3D,mod3 c1

    ind3D R sb nguyn, " l vA t1 ng&n nhQ ch?a tin nh&n c>n ]c

    mod3 R ( dng dJ liu 24

    + dng dJ liu ki;u t3Dt$.u nhB lnh BCc thc hin th= ki;u dJ liu t1 vL dBQi dng t3Dt / mod3+9R

    T 0U0-4V%R

    7UjRstat,oa,alpha,scts,tooa,}o,pid,dcs,sca,tosca,l3ngth7data

    T 0U0-0KUVTR

    7UjRstat,da,alpha,toda,}o,pid,dcs,vp,sca,tosca,l3ngth7data

    T 0U0-0T5T0-2WTsR7UjR stat,}o,m1,1a,to1a,scts,dt,st

    T 0U0-7WUU5$4sR

    7UjRstat,}o,ct,pid,mn,da,toda,l3ngth7cdata

    T 7KU sto1ag3

    7UjRstat,sn,mid,dcs,pag3,pag3s7

    data

    $.u dJ liu t1 vL dng 24/mod3(9R

    7UjR stat,alpha,l3ngth7pdu

    $.u lnh 6A li th= t1 vL dBQi dngR

    7U0 WR 311

    nh gi tin nh~n 0U0R

    5T7Uj0

    $.u gi tin nh~n dBQi dng t3DtR

    /7Uj+9R

    7Uj0da,toda7 t3Dt is 3nt313d ct1l-*07$.u gi tin nh~n dng 24R

    /7Uj(9R

    7Uj0l3ngth7 24 is giv3n ct1l-*07

    nh BCc thc hin thnh cng thi dJ liu t1 vLR

    4ng t3Dt R 7Uj0R m1

    WX

    4ng 24 R 7Uj0R m1

    WX

    Trang 150

  • 7/24/2019 Giao Trinh 2014

    152/174

    nh 6A l_i R 7U0 WR 311

    Trang 151

  • 7/24/2019 Giao Trinh 2014

    153/174

    K+#) TUm hi %3 Yic Z>[\\a

    a` jc &i chung ca )ic15644a

    Ey l vi iLu khi;n thu!c h] 2V7+xDDD vQi tp lnh g\m lnh c" ! di + 6it# Uilnh Lu BCc thc thi t1ong m!t chu k= Dung clock# Tbc ! hot !ng tbi a cho phNp l )(U' vQi m!t chu k= lnh l )((ns# K! nhQ chBIng t1=nh XD+ 6it, 6! nhQ dJ liu x 6yt3

    5U v 6! nhQ dJ liu 2WU vQi dung lBCng )x 6yt3# 0b 2WT V*W l vQi pin V*W#7:c rc tnh ngoi vi 6ao g\m c:c khbi ch?c n&ng sauR

    - Tim31(R 6! .m 6it vQi 6! chia t>n sb 6it#

    - Tim31+R 6! .m +x 6it vQi 6! chia t>n sb, c" th; thc hin ch?c n&ng .m da vo Dung clockngoi vi ngay khi vi iLu khi;n hot !ng ` ch. ! sl33p#

    - Tim31)R 6! .m 6it vQi 6! chia t>n sb, 6! postcal31#

    - 'ai 6! 7aptu13*so s:nh*iLu ch. ! 1ng Dung#

    - 7:c chu^n giao ti.p nbi ti.p 002 /0ynch1onous 031ial 2o1t9, 02V v V)7#

    - 7hu^n giao ti.p nbi ti.p 05T vQi q 6it Aa ch#

    - 7_ng giao ti.p song song 202 /2a1all3l 0lav3 2o1t9 vQi c:c chEn iLu khi;n 4, S, 70 `6n ngoi#

    7:c rc tnh 5nalogR

    - knh chuy;n _i 547 +( 6it#

    - 'ai 6! so s:nh#

    Kn cnh " l m!t vi rc tnh kh:c c@a vi iLu khi;n nhBR

    - K! nhQ }lash vQi kh n&ng ghi D"a BCc +((#((( l>n#

    - K! nhQ 2WU vQi kh n&ng ghi D"a BCc +#(((#((( l>n#

    - 4J liu 6! nhQ 2WU c" th; lBu t1J t1n ( n&m#

    - Xh n&ng t np chBIng t1=nh vQi s iLu khi;n c@a ph>n mLm#

    - $p BCc chBIng t1=nh ngay t1n mch in V702 /Vn 7i1cuit 031ial 21og1amming9

    thng ua ) chEn#

    - Satchdog Tim31 vQi 6! dao !ng t1ong#

    - 7h?c n&ng 6o mt mO chBIng t1=nh#

    - 7h. ! 0l33p#- 7" th; hot !ng vQi nhiLu dng Wscillato1 kh:c nhau#

    Trang 152

  • 7/24/2019 Giao Trinh 2014

    154/174

    69 2 & chln )ic15644a

    '=nh x# xR0I \ chEn c@a 2ic+x}a

    c` -g?n ng #op trEnh ch )ic 15644a

    ; lp t1=nh cho 2ic+x}a c" 1

  • 7/24/2019 Giao Trinh 2014

    155/174

    Q;!; 2 & ngu(=n #} ph_n cng v tVnh tn

    a` 2 & ngu(=n #} tn h th

  • 7/24/2019 Giao Trinh 2014

    156/174

    '=nh x# qR Uch ngu\n %

    4fng c>u diod3 ; chnh lBu in :p Doay chiLu sang + chiLu #

    4fng V7 U( R _n Anh in :p 1a % cho vi iLu khi;n hot !ng#

    T1ansisto1 Kx R dfng ; nEng dYng ng 1a , g:nh dYng cho V7 (#

    4fng c:c tH h"a c" gi: t1A kh:c nhau ; l]c in :p 1a, thBPng ch]n c:c tHlQnR +(((u, ))(u,u8

    4fng c:c in t1` c" gi: t1A kh:c nhau ; _n Anh in :p, thBPng chon c:c in t1`R x(###

    4fng n l3d ; hi;n t1A t1ng th:i c@a ngu\n!

    c` -gun N9

    Vin,

    Ena9:e1

    Vo;4

    Adi andrid

    Th3o yu c>u c@a ?ng dHng, giao din sF c" + t3Dtvi3 v 6utton# Ta c" ) c:ch thi.t k.giao din#

    Trang 164

  • 7/24/2019 Giao Trinh 2014

    166/174

    '=nh x# Rjiao din h thbng iLu khi;n t1n 5nd1oid

    Yr%n! tL cc b?c t!Lc !i#n

    B+Y!i@t k@ giao 'i#n An'roi'

    Ta to m!t p1o3ct c" tn l Guitin2+2 nhB c:c v dH t1nR

    $hp cod3 vo }il3 activitymain#Dml nhB sauR

    '=nh x# RTo giao din cho ?ng dHng

    il3 activitymain#Dml t1ong juitin 0U0

    -'i dung trng top tin activit(Jain!#H3lativ3ayout DmlnsRand1oid!ttp+``sc!emas6an'roi'6com`apk`res`an'roi'

    DmlnsRtools!ttp+``sc!emas6an'roi'6com`tools

    Trang 165

  • 7/24/2019 Giao Trinh 2014

    167/174

    and1oidRid^_i'`Relati"e,ayout and1oidRlayoutidthmatc!dparent and1oidRlayouth3ightmatc!dparent and1oid Ro1i3ntation"ertical and1oid RpaddingKottom^'imen`acti"ityd"erticaldmargin and1oid Rpadding3}t^'imen`acti"ityd!oriontaldmargin and1oid Rpaddingight^'imen`acti"ityd!oriontaldmargin and1oid RpaddingTop^'imen`acti"ityd"erticaldmargin toolsRcont3Dt6MainActi"ity

    T3Dt%i3 and1oidRid^_i'`Ye8tFie and1oidRlayoutidth'p and1oidRlayouth3ightrapdcontent and1oidRlayoutalignKas3lin3^_i'`et'ient!oai and1oidRlayoutalign2a13ntToptrue

    and1oidRlayoutma1ginTop'p and1oidRt3Dti#n t!oi+ and1oidRt3Dt5pp3a1anc3an'roi'+attr`te8tAppearanceMe'ium*

    ditT3Dt and1oidRid^_i'`et'ient!oai and1oidRlayoutidthrapdcontent and1oidRlayouth3ight'p and1oidRlayoutalign2a13ntToptrue and1oidRlayoutma1ginTopX'p and1oidRlayouttoightW}^_i'`Ye8tFie

    and1oidR3ms and1oidRg1avitybottomtopcenter and1oid RinputTyp3p!one and1oid Rt3Dt *

    Kutton and1oidRid^_i'`ibsen' and1oidRlayoutidthrapdcontent and1oidRlayouth3ightrapdcontent and1oidRlayoutalign2a13nt3}ttrue and1oidRlayout63lo^_i'`et'ient!oai

    and1oidRon7lickSen'on and1oidRt3Dton*

    Kutton and1oidRid^_i'`button and1oidRlayoutidthrapdcontent and1oidRlayouth3ightrapdcontent and1oidRlayoutalign2a13nt3}ttrue and1oidRlayout63lo^_i'`button and1oidRon7lickSen'of and1oidRt3Dtoff*

    Trang 166

  • 7/24/2019 Giao Trinh 2014

    168/174

    T3Dt%i3 and1oidRid^_i'`te8tFie and1oidRlayoutidthrapdcontent and1oidRlayouth3ight'p and1oidRlayoutalign2a13nt3}ttrue and1oidRlayout63lo^_i'`buttonX and1oidRt3Dt5pp3a1anc3an'roi'+attr`te8tAppearanceMe'ium*

    T3Dt%i3 and1oidRid^_i'`te8tFie and1oidRlayoutidthrapdcontent and1oidRlayouth3ight'p and1oidRlayoutalign2a13nt3}ttrue and1oidRlayout63lo^_i'`te8tFie and1oidRg1avitybottomtop and1oidRt3DtYrng t!i+

    and1oidRt3Dt5pp3a1anc3an'roi'+attr`te8tAppearanceMe'ium* T3Dt%i3 and1oidRid^_i'`t"bantin and1oidRlayoutidthmatc!dparent and1oidRlayouth3ight'p and1oidRlayoutalign2a13nt3}ttrue and1oidRlayout63lo^_i'`te8tFie and1oidRt3Dt5pp3a1anc3an'roi'+attr`te8tAppearanceMe'ium and1oidRt3Dt7olo1 and1oidRt3Dt0tyl3bol'*

    T3Dt%i3 and1oidRid^_i'`te8tFie and1oidRlayoutidthmatc!dparent and1oidRlayouth3ightrapdcontent and1oidRlayoutalign2a13nt3}ttrue and1oidRlayout63lo^_i'`t"bantin and1oidRg1avitycenter and1oidRt3DtI# Y!ng i[u k!iVn ~ and1oidRt3Dt0tyl3italic*

    13u3stocus *

    Kutton and1oidRid^_i'`button and1oidRlayoutidthrapdcontent and1oidRlayouth3ightrapdcontent and1oidRlayoutalignKas3lin3^_i'`ibsen' and1oidRlayoutalignKottom^_i'`ibsen' and1oidRlayoutalign3}t^_i'`et'ient!oai and1oidRlayoutma1gin3}t'p and1oidRon7lickSen'onX

    and1oidRt3DtonX*

    Trang 167

  • 7/24/2019 Giao Trinh 2014

    169/174

    Kutton and1oidRid^_i'`buttonX and1oidRlayoutidthrapdcontent and1oidRlayouth3ightrapdcontent and1oidRlayoutalignKas3lin3^_i'`button and1oidRlayoutalignKottom^_i'`button and1oidRlayoutalign3}t^_i'`button and1oidRon7lickSen'ofX and1oidRt3DtoffX**3lativ3ayout

    BX+ "i@t co'e T1ong thB mHc sc1 ta c>n to thm ) class Uy0U0Uonito1#ava/gi tin sms9 v0ms3c3iv3,ava /nhn tin sms9#

    ick chu!t phi vo sc1 ch]n thB mHc n3- class

    '=nh x# qRTo n3 class

    0au " ta nhp vo c:c mHc c>n thi.tR packg3,nam3,sup31class

    Trang 16

  • 7/24/2019 Giao Trinh 2014

    170/174

    '=nh x# ($3 ava class$h

  • 7/24/2019 Giao Trinh 2014

    171/174

    impo1t and1oid#vi3#U3nuimpo1t and1oid#cont3nt#Vnt3ntimpo1t and1oid#t3l3phony#0msUanag31impo1t and1oid#vi3#%i3impo1t and1oid#idg3t#ditT3Dtimpo1t and1oid#idg3t#Vmag3%i3impo1t and1oid#idg3t#T3Dt%i3impo1t and1oid#idg3t#Toast

    pu6lic class Uain5ctivity 3Dt3nds 5ctivity ** khai 6ao cac 6i3n

    pu6lic static T3Dt%i3 6antinpu6lic static ditT3Dt di3nthoai0t1ing tam|on+|,tam+|o}}+|, tam)|on)|,tam|o}})|,wWv311id3

    p1ot3ct3d void on713at3/Kundl3 sav3dVnstanc30tat39 sup31#on713at3/sav3dVnstanc30tat39

    s3t7ont3nt%i3/#layout#activitymain96antin /T3Dt%i39 }ind%i3KyVd/#id#tv6antin9di3nthoai /ditT3Dt9 }ind%i3KyVd/#id#3tdi3nthoai

    ** s kin cho c:c Kutton

    pu6lic void 03ndon+/%i3 vi39 t1y s3nd0msU3ssag3/di3nthoai#g3tT3Dt/9#to0t1ing/9, tam#to0t1ing/99Toast#mak3T3Dt/this, |0U0 03nt|, Toast#$jT'W$j9#sho/9 catch /Dc3ption 39 Toast#mak3T3Dt/this, |ail3d to s3nd 0U0|, Toast#$jT'W$j9

    #sho/93#p1int0tackT1ac3/9

    pu6lic void 03ndo}+/%i3 vi39

    t1y s3nd0msU3ssag3/di3nthoai#g3tT3Dt/9#to0t1ing/9, tam+#to0t1ing/99Toast#mak3T3Dt/this, |0U0 03nt|, Toast#$jT'W$j9#sho/9 catch /Dc3ption 39 Toast#mak3T3Dt/this, |ail3d to s3nd 0U0|, Toast#$jT'W$j9

    #sho/9

    3#p1int0tackT1ac3/9

    pu6lic void 03ndon)/%i3 vi39

    t1y s3nd0msU3ssag3/di3nthoai#g3tT3Dt/9#to0t1ing/9, tam)#to0t1ing/99Toast#mak3T3Dt/this, |0U0 03nt|, Toast#$jT'W$j9#sho/9 catch /Dc3ption 39 Toast#mak3T3Dt/this, |ail3d to s3nd 0U0|, Toast#$jT'W$j9

    #sho/93#p1int0tackT1ac3/9

    Trang 170

  • 7/24/2019 Giao Trinh 2014

    172/174

    pu6lic void 03ndo})/%i3 vi39

    t1y s3nd0msU3ssag3/di3nthoai#g3tT3Dt/9#to0t1ing/9, tam#to0t1ing/99Toast#mak3T3Dt/this, |0U0 03nt|, Toast#$jT'W$j9#sho/9 catch /Dc3ption 39 Toast#mak3T3Dt/this, |ail3d to s3nd 0U0|, Toast#$jT'W$j9

    #sho/93#p1int0tackT1ac3/9

    ** 7huong t1inh con s3nd smsp1ivat3 void s3nd0msU3ssag3/0t1ing add13ss, 0t1ing m3ssag39

    th1os Dc3ption 0msUanag31 smsUg1 0msUanag31#g3t43}ault/9

    smsUg1#s3ndT3DtU3ssag3/add13ss, null, m3ssag3, null, null9pu6lic void }inish5ctivity/%i3 v9

    }inish/9**

    wWv311id3pu6lic 6ool3an on713at3WptionsU3nu/U3nu m3nu9 g3tU3nuVn}lat31/9#in}lat3/#m3nu#main, m3nu9

    13tu1n t1u3

    TBIng t ta nhp cod3 cho }il3 0U0Uonito1#ava v 0ms3c3iv3#ava

    -'i dung trng +(2+2+nitr!avaHpackag3 com3Dampl3#guitinsmsimpo1t and1oid#cont3nt#K1oadcast3c3iv31impo1t and1oid#cont3nt#7ont3Dtimpo1t and1oid#cont3nt#Vnt3ntimpo1t and1oid#t3l3phony#0msU3ssag3impo1t and1oid#util#og

    pu6lic class Uy0U0Uonito1 3Dt3nds K1oadcast3c3iv31 p1ivat3 static }inal 0t1ing 57TVW$ |and1oid#p1ovid31#T3l3phony#0U07V%4|wWv311id3

    pu6lic void on3c3iv3/7ont3Dt cont3Dt, Vnt3nt int3nt9

    i}/int3ntnull int3nt#g3t5ction/9null 57TVW$#compa13ToVgno137as3/int3nt#g3t5ction/99(9

    W63ctpdu511ay /W63ct9 int3nt#g3tDt1as/9#g3t/|pdus|90msU3ssag3 m3ssag3s n3 0msU3ssag3pdu511ay#l3ngth

    }o1 /int i ( ipdu511ay#l3ngth i9

    Trang 171

  • 7/24/2019 Giao Trinh 2014

    173/174

    m3ssag3si 0msU3ssag3#c13at31om2du//6yt39pdu511ay i9og#d/|Uy0U0Uonito1|, |1omR | m3ssag3si#g3tW1iginating5dd13ss/99

    og#d/|Uy0U0Uonito1|, |UsgR | m3ssag3si#g3tU3ssag3Kody/99og#d/|Uy0U0Uonito1|,|0U0 U3ssag3 3c3iv3d#|9

    -'i dung trng 2s7*c*iv*!avaHpackag3 com3Dampl3#guitinsmsimpo1t and1oid#cont3nt#K1oadcast3c3iv31impo1t and1oid#cont3nt#7ont3Dtimpo1t and1oid#cont3nt#Vnt3ntimpo1t and1oid#os#Kundl3impo1t and1oid#t3l3phony#0msU3ssag3

    impo1t and1oid#util#ogpu6lic class 0ms3c3iv3 3Dt3nds K1oadcast3c3iv31 p1ivat3 static }inal 0t1ing T5j null

    wWv311id3pu6lic void on3c3iv3/7ont3Dt cont3Dt, Vnt3nt int3nt9

    og#i/T5j, |on3c3iv3|90t1ing st103nd31 ||, st10ms7ont3nt ||

    Kundl3 6undl3 int3nt#g3tDt1as/90msU3ssag3 msgs nulli} /6undl3 null9 ** 3t1i3v3 th3 0U0 m3ssag3 13c3iv3d

    W63ct pdus /W63ct9 6undl3#g3t/|pdus|9msgs n3 0msU3ssag3pdus#l3ngth}o1 /int i ( i msgs#l3ngth i9 msgsi 0msU3ssag3#c13at31om2du//6yt39 pdusi9st103nd31 msgsi#g3tW1iginating5dd13ss/9st10ms7ont3nt msgsi#g3tU3ssag3Kody/9#to0t1ing/9** uat 1a T3Dt%i3Uain5ctivity#6antin#s3tT3Dt/st10ms7ont3nt9

    $goi 1a t1ong }il3 5nd1oidUani}3st#Dml ta c>n thm vo p31mission cho ph Np gi

    v nhn smsR-'i dung trng i#* 3ndrid+ani*st!#H

    Dml v31sion]6]3ncoding]utf-]mani}3st DmlnsRand1oid]!ttp+``sc!emas6an'roi'6com`apk`res`an'roi'] packag3]come8ample6guitinsms] and1oidRv31sion7od3]] and1oidRv31sion$am3]6] us3s-sdk and1oidRmin0dk%31sion]] and1oidRta1g3t0dk%31sion]]* -- -- us3s-p31mission and1oidRnam3]an'roi'6permission6ShDdSMS]*

    Trang 172

  • 7/24/2019 Giao Trinh 2014

    174/174

    us3s-p31mission and1oidRnam3]an'roi'6permission6RCxFdSMS]* us3s-p31mission and1oidRnam3]an'roi'6permission6RADdSMS]*

    us3s-p31missionand1oidRnam3]an'roi'6permission6ACCSSdC)ARSd,)CAYx)h]*

    us3s-p31mission and1oidRnam3]an'roi'6permission6ACCSSdxhd,)CAYx)h]* -- -- application and1oidRalloKackup]true] and1oidRicon]^'raable`icdlaunc!er] and1oidRla63l]^string`appdname] and1oidRth3m3]^style`AppY!eme] activity and1oidRnam3]come8ample6guitinsms6MainActi"ity] and1oidRla63l]^string`appdname] int3nt-}ilt31

    action and1oidRnam3]an'roi'6intent6action6MAxh]* cat3go1y and1oidRnam3]an'roi'6intent6category6,AQhCIR]* *int3nt-}ilt31 *activity 13c3iv31 and1oidRnam3]come8ample6guitinsms6SmsRecei"e] and1oidRp31mission]an'roi'6permission6RADdSMS]

    int3nt }ilt31 and1oidRp1io1ity]]