android skripta 1-10

Upload: dragisa-vlajkovic

Post on 02-Jun-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/10/2019 Android Skripta 1-10

    1/153

    UNIVERZITET U BEOGRADU

    FAKULTET ORGANIZACIONIH NAUKA

    LABORATORIJA ZA ELEKTRONSKO POSLOVANJE

    RAZVOJ APLIKACIJA ZAOPERATIVNI SISTEM ANDROID

    Beograd, oko!ar "#$"%

    Sadr&a'

  • 8/10/2019 Android Skripta 1-10

    2/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    $% O/.o)e A.drod *+a1or0e%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%2

    $%$% I/or'a ra()o'a A.drod //e0a%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%3

    $%$%$% A.drod $%#4$%$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5

    $%$%"% A.drod $%6 78C9*-ake:;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%Do.9:;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%E-+ar:;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$#

    $%$%6% A.drod "%" 7>Fro@o:;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$"

    $%$%2% A.drod "%= 7>G.ger!read:;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$?

    $%$%3% A.drod "%? 7>G.ger!read:, >I-eCrea0:;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$6

    $%$%5% Da+' ra()o' A.drod //e0a%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$6

    $%$%Ho.e@-o0!:;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$2$%$%$#% A.drod =%$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$2

    $%$%$$% A.drod =%"%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$2

    $%$%$"% A.drod ? 7>I-e Crea0 Sa.d-:;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$3

    $%$%$=% A.drod ?%$ 7Je++@ Bea.;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$3

    $%"% F9.k-o.a+.o/ A.drod OS%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$3

    $%=% Arek9ra A.drod //e0a%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$O*e. Ha.d/e A++a.-e:7OHA; ko'a 'e *red/a)+'a+a ko.(or-'90 )e ko0*a.'a ko'e /9*red/a)+'a+e (.aa'.e >grae: .a r&9 0o!+. e+e1o.a, *o*9 >Tea/I./r90e./:, >Broad-o0:, >Goog+e:, >HTC:, >I.e+:, >LG:, >Mooro+a:,

    >9a+-o00: 0.oge dr9ge ko0*a.'e% OHA 'e okr+a /)e9 /)o' *r)*ro()od, A.drod, 0o!+.9 *+a1or09 (a/.o)a.9 .a L.9 ker.e+9 "%2%

    1.1.1.Android 1.#,1.1

    Pr)a )er('a o*era).og //e0a A.drod 7$%#;*red/a)+'e.a 'e 9 Se*e0!r9 "##5% god.e%A.drod $%# 'e /)o'9 *re0'er9 do&)eo .ae+e1o.9 ko0*a.'e HTC, ko'a 'e 9 /rad.' /ako0*a.'o0 G9g+ ra()+a e+e1o. ko' e 9/*e.orea+(o)a *oe.e (adake ko'e 'e .o)a

    *+a1or0a 0a+a% Jed. e+e1o. ko' 'e 0aoA.drod )er('e $%# !o 'e HTC Drea0 + TMo!+eG$%

    A.drod $%# 'e *ao od 0.og de' !o+e/, e 'e G9g+ e/ 0e/e-ka/.'e (!a-o .o)9 )er('9 //e0a ko'a 'e /*ra)+a *ar >kr.*ro!+e0a:, *odrk9 (a g+a/o).9 *rerag9, 0og9.o/ *+ae. a*+ka-'a 9o.+a'. *roda).- 7>Marke:;, /*ra)+'e.e *ro!+e0e 9 )e( /a /er)/o0>G0a+: 'o .eko+ko /. *re*ra)k% O)a a&9rra.a )er('a //e0a !+a 'eA.drod )er('e $%$% Kao *reod.a )er('a, o)a )er('a 'e !+a .a0e.'e.ae+e1o.9 ko0*a.'e HTC, HTC Drea0, ko' 'e da+'e *red/a)+'ao e+e1o..a0e.'e. *rogra0er0a .&e.'er0a (ad9&e.0 (a ra()o' //e0a, a kor/.k a*+ka-'a%

    3

    Android OS

  • 8/10/2019 Android Skripta 1-10

    8/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    1.1.".Android 1.- (up%ake/$

    Sa0o r 0e/e-a ka/.'e, 9 Ma'9 "##*o/+a/-e:/*red /eda r0e%

    No)a )er('a do.e+a 'e (.aa'.a *o!o+'a.'a//e0a 9 )d9 .o) 0og9.o/ kao o /9

    - /.0a.'e )deo /adr&a'a- *odrka (a /ereo !+99 /+9a+-e

    - *ode/)a a/a9ra

    - *re*o(.a)a.'e g+a/a

    - 0og9.o/ ko'a 'e *r9&e.a *rogra0er0a da krera'9 /o*/)e.ea*+ka-'e (a *oe. ekra. 7>Ho0e S-ree.:;, ko'e /e .a()a'9 Vd&e7>dge/:;%

    No)a )er('a //e0a ko'a /e *r)o!.o *o'a)+a kao .adograd.'a (a*o/o'e HTC Drea0, *r)9k+a 'e dr9ge *ro()oae, ako da /e 9 *erod9.ako. *o'a)e )er('e $%6 'a)+'a )e+k !ro' .o) 0ode+a e+e1o.a ko' /9 !+*okrea. A.drod o*era).0 //e0o0%

    1.1.0.Android 1. (23onut/$

    Nako. rokog *r)aa.'a A.drod o*era).og//e0a od /ra.e 0.og *ro()oaa 0o!+.9rea'a, ko'e 'e (a()a+a *o'a)a )er('e $%6 !+o 'e

    .eo*od.o odr&a korak /a ko.k9re.-'o0 ko'a 'e

    .a*redo)a+a .a /)ako0 *o+'9% G9g+ 'e !o /)e/a./a.'a .a r&9 0o!+. 9rea'a .a/a)o/raeg'9 ko./a..og *o!o+'a.'a 9)oe.'a.o) 0og9.o/ /)og //e0a%

    No)a )er('a .a()a.a >Kro1.a: 7>Do.9:;, do.e+a'e !ro'.a *o!o+'a.'a )e roko *r)ae.og o*era).og //e0a%Pro0e.e 9 )er(' $%2 *red/a)+'a+e /9 'a/a. (.ak da 'e G9g+ -eo *ro'eka/)ao )eo0a o(!+'.o%

    Na'(.aa'.'a *o!o+'a.'a 9 )er(' $%2 /9

    5

    Android 1. (23onut/$

    Android 1.- up%ake

  • 8/10/2019 Android Skripta 1-10

    9/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    - No) (g+ed O.+a'. Proda).-e 7>Marke:; ko' 'e o0og9okor/.-0a +ak *r/9* !r&9 *rerag9 &e+'e. a*+ka-'a

    - Ka0er9 )deo ka0er9 .egr/a.9 9 Ga+er'9, ko'a 'e /adao0og9a)a+a (!or )e daoeka (a /o)re0e.o !r/a.'e

    - Podrk9 (a .o)e e.o+og'e kao o /9 CDMA4EVDO, 5#"%$ >eo/*ee-:

    - Podrk9 (a .a)ga-o.e a*+ka-'e

    - Ra(.a *o!o+'a.'a *o *a.'9 !r(.e, *rerage grakog .er1e'/a,d%

    Pored /) *o(). /ra.a .o)e )er('e //e0a, *o+ako 'e do (ra&a'ado+a(o *ro!+e0 ko' e *ra A.drod o*era). //e0 /)e do da.a.')er('a% Kako 'e G9g+ (a e+e1o. (a ra()o' //e0a (a!rao HTC Drea0 //e0 ra()'ao .a o/.o)9 0og9.o/ ko'e 'e a' e+e1o. *o/edo)ao, *r) 9red9 (a a&9rra.'e //e0a !o 'e 9*ra)o HTC Drea0% Me90, *ro!+e0 /e

    'a)o *oo 'e )e+k !ro' /arad.ka (!a-o .a r&e /)o'e e+e1o.e /a doada ak9e+.o0 )er('o0 //e0a $%6% Kako 'e /)ak *ro()oa *r+agodoA.drod okr9&e.'e /)o'0 *ore!a0a, od.o/.o (0e.o okr9&e.'e ako daodgo)ara 0og9.o/0a /)o' 0ode+a, +ako a&9rra.'e .'e !+o 0og9e,

    'er .o)a )er('a //e0a .'e 0og+a da /e *r0e. !e( doda.e0a.*9+a-'e od /ra.e *ro()oaa%

    O)o 'e do)e+o do 9/*ora)a.'a re.'a .o)e )er('e //e0a, ak /9 /e

    *o'a)+')a+ .o) 0ode+ /a /ada /aro0 )er('o0 //e0a% Nek od .' /9 da.a/ o/a+ !e( .adograd.'e .a .o)'e )er('e%

    1.1.4.Android ".#,".1 (25%lair/$

    Kako 'e )re0e *ro+a(+o )re0e. HTC Drea0'e *o+ako (ao/a'ao (a ko.k9re.-'o0 *o*a.'9 e.k 0og9.o/, .a0e 0ao 'e*re/+a! ard)er (a )re0e ko'e 'e do+a(+o%I0a'9 9 )d9 d.a0k9 ra()o'a r&a G9g+ 9/arad.' /a HTC kor*ora-'o0 (a*o.'e ra()o'

    .o)og e+e1o.a ko' e /+9& (a ra()o'o*era).og //e0a a*+ka-'a%

    Pr) e+e1o. ko' 9 oko!r9 do!'a .o)9 )er('9 o*era).og //e0a A.drod,!o 'e 9rea' ko0*a.'e Mooro+a, ko' /e .a()ao Mooro+a Drod%O)a' e+e1o. *okrea+a 'e .o)a )er('a A.drod //e0a "%#

    7>E-+ar:;%

    A.drod "%# 'e /0ara. (a *r)9 )e+k9 .adograd.'9 //e0a, ko'a 'e do.e+a(.aa'.e *ro0e.e kako *o *a.'9 (g+eda grakog .er1e'/a, ako *o

    *a.'9 !ro'. .o) 0og9.o/ ko'e 'e .o)a )er('a 9k+'9)a+a%

    M-ro/o1 E-a.ge: ko' o0og9a)a *o)e()a.'e0o!+.og e+e1o.a /a /er)ero0 ko' kro( o)a' *rooko+ o0og9a)a

    +ak9 ko09.ka-'9 (0e9 .*r% r0e (a*o/+e.og 70a+, -a+e.dar,o9+ook%%%;- Podrka (a >Fa-e!ook: ko'a .egre o)9 /o-'a+.9 0re&9 9 ko.ake

    e+e1o.a

    - Po!o+'a.'a )e! *rera&)aa

    - Po*9.o .o)a a*+ka-'a (a *rera&)a.'e 0a*a 7>Goog+e Ma*/:;, *o*r) *9 o)a a*+ka-'a o0og9a)a *reg+ed /ae+/k/ /.0aka .a0o!+.o0 e+e1o.9

    - No) J9'9! 7>o99!e:; )d&e ko' o0og9a)a !r(o *o/a)+'a.'e/)o' /.0aka .a /er)ere J9'9!a

    - No) .a. 9*ra)+'a.a' ko.ak0a ko' o0og9a)a (.a.o +ak*r/9* o*-'a0a .ego do ada%%%

    Mooro+a Drod ko'a 'e 0a+a *ro-e/or ek *ro/e.e /.age, 0a+a 'e (a)da.grak *ro-e/or, ako da /9 (.aa'.e r0e .a *o+'9 =D gara *o+ako*oe+e da /)o'e .a/+o)e *r+agoa)a'9 /)e 'a0 A.drod 9rea'0a%

    I *ored *red/a)+'a.'a .o)og 0ode+a e+e1o.a/a .o)o0 )er('o0 o*era).og //e0a 9/arad.' /a Mooro+o0, G9g+ 'e .a/a)o9*ored. ra()o' /o*/)e.og e+e1o.a ko' e! .a/+ed.k ada )e +ege.dar.og HTCDrea0 e+e1a.a% No) e+e1o. ! re!a+o dao0og9 ra()o'.o0 09 ko0*a.'e G9g+, a+ o/a+0 *rogra0er0a da da+'e 9.a*re9'e

    /)o' //e0 a*+ka-'e ko'e /9 (a .'ega .a0e.'e.e%

    No) e+e1o. G9g+ 'e *o.o)o ra()o 9 /arad.' /a a')a./ko0 ko0*a.'o0

    HTC, .o) e+e1o. *red/a)+'ao 'e *o/+ed.'9 ge.era-'9 e.o+og'e, e+e1o.'e 0ao *ro-e/or ' 'e rad. ak !o $G(, 0ao 'e 632MB rad.e0e0or'e, *odr&a)ao 'e 0-roSD kar-e )e+.e do ="GB, a o 'e.a'!.'e, do+a(o 'e /a .a'.o)'o0 )er('o0 A.drod o*era).og //e0a A.drod "%$% No) e+e1o. /e .a()ao Goog+e Ne9/ O.e%

    No) o*era). //e0 ko' /e *o'a)o /a *o'a)o0 .o)og G9g+o)oge+e1o.a, .o/o 'e o(.ak9 "%$, a kod. .a() 'e *ak (adr&a. od /ra.eG9g+a, ako da 'e !o / kao (a A.drod "%# >E-+ar:%

    A.drod "%$ 'e (a ra(+k9 od *reod.e )er('e ko'a /e .a+a(+a 'ed.o .ae+e1o.9 Mooro+a Drod, !o o/.o)a (a ogro0a. !ro' e+e1o.a ko' /9 /e

    $#

    Goo'le 6e7us One

  • 8/10/2019 Android Skripta 1-10

    11/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    *o'a)+')a+ 9 /+edee0 *erod9% O)a )er('a //e0a 'e 0a/o).o*r)ae.a od /) *ro()oaa e+e1o.a ko' /9 !+ 9k+'9e. 9 A.drod*ro'eka *red/a)+'a *r)9 /+ede9 >0a/o).9: )er('9 .ako. )er('e $%6%

    I ako 0.og *ro()oa ./9 )r+ .adograd.'9 $%6 )er('e .a $%2 + *ak "%#

    )er('9 o*era).og //e0a A.drod, o)og *9a *r*re0a+ /9 .adograd.'9(a )e rea+(o)a.e 0o!+.e 9rea'e .a )er('9 "%$%

    Po!o+'a.'a ko'a /9 ra(d)a'a+a A.dord "%# od )er('e "%$ /9 /+edea

    - Po!o+'a.a 9k9*.a !r(.a //e0a- Podrka (a .o)e )e+.e ekra.a re(o+9-'e /

    - No) grak .er1e'/ e! *rera&)aa *odrka (a HTML6

    - Podrka (a !+- (a ka0er9

    - Dga+. (90

    - Podrk9 (a reg/ro)a.'e *okrea )e *r/'9 od 'ed.o0, ()% >M9+o9-:

    - Po!o+'a.a a/a9ra

    - Podrka (a !+99 )er('e "%$ 7!+99 ra./1er daoeka;

    - >L)e a++*a*er/:%%%

    Nako. *o'a)+')a.'a >Goog+e Ne9/ O.e: e+e1o.a, .a/a+a 'e *ra)a !9'-a.o) 0ode+a gde 'e )ode9 9+og9 0a+a ko0*a.'a HTC%

    Po.o)o do (ra&a'a do+a( .e0og9.o/ -e.ra+(o)a.og a&9rra.'a //e0aod /ra.e G9g+a, )e 'e .o)a )er('a *o.o)o 0ora+a da *roe *ro-e/*r+agoa)a.a' od /ra.e dr9g *ro()oaa% O)a' .edo/ak 9/+o)o 'e da do da.a/ 0.og 0ode+ ./9 do&)e+ /)o'9 *re0'er9 .a .o)o0o*era).o0 //e09, ko' 'e /ada -+'ao 0.ogo 0o.'e e+e1o.e .ego o

    'e do ada !o /+9a'%

    No)a )er('a o*era).og //e0a do.e+a 'e (.aa'.a *o!o+'a.'a *o*a.'9 =D e.o+og'e, od.o/.o a*+ka-'a% Po'a)+')a.'e A.drod "%# ko' 'e*okre.9o ra()o' ko0*+ek/. =D a*+ka-'a (a 0o!+.e 9rea'e, !o 'edoda.o 9!r(a. *o'a)o0 A.drod "%$ //e0a%

    Po *r) *9 /e /*red /eda r0e 'ed.a /k9+*9ra (adr&a)a d9&e od *ar0e/e-, *o *r) *9 *ro+o 'e 3 0e/e- *re .ego o 'e G9g+ *red/a)o.o)9 )er('9, o 'e (.a+o /a0o 'ed.o )e+ko *o!o+'a.'e //e0a%

    $$

  • 8/10/2019 Android Skripta 1-10

    12/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    1.1.-.Android "." (28ro9o/$

    Nako. d9&eg *eroda !e( kak) )e/ o.o)o' re)(' o*era).og //e0a A.drod,/*red /eda r0e, ()a..o 'e *o/a)+'e.a

    /k9+*9ra /0r(.9og 'og9ra 7>Fro@o:; o 'e(.a+o da 'e .o)a )er('a //e0a /*re0.a da 'e G9g+o) 9rea' 7Ne9/ O.e; !o/*re0a. da .o) //e0 *okre.e% M.og /9.o)9 )er('9 *red/a)+'a+ kao a*/o+9.9re)o+9-'9 //e0a ko'a e A.drod *o/a).a +der/k9 *o(-'9 .a r&9 0o!+.e+e1o.a%

    A.drod "%" *red/a)+'e. .a G9g+ /a09 9Ma'9 "#$#% god.e, /adr&ao 'e .a')e9 +/9 *o!o+'a.'a ko'a 'e .eka )er('a/a /)o'o0 *o'a)o0 do.e+a, a+ 0o&da .a'(aa'.'9 od /), o.o *o!o+'a.'e

    ko'e 'e A.drod d/a.-ra+o odko.k9re./k o*era). //e0a 'e/e

    *odrka (a e/ a.0a-'e 7>F+a/ a.0ao.:; ko'a 'e 0*+e0e.ra.a 9/arad.' /a ko0*a.'o0 Ado!e%

    Po!o+'a.a' ko'a /9 9k+'9e.a 9 .o)o' )er(' /9

    - Ve+ko *o)ea.'e 9k9*.e !r(.e //e0a, o*0(a-'a kore.'a0e0or'e

    - Doda.o *o)ea.'e *ro-e/ra.'a a*+ka-'a ko'a 'e o/)are.a*r0e.o0 >JIT: 7>J9/ . T0e:; /kr*e

    - I.egra-'a >Cro0e: V5 Ja)aS-r* 9 )e! *rera&)a

    - Po!o+'a.a *odrka (a >M-ro/o1 E-a.ge:

    - Mog9.o/ de+'e.'a .er.e ko.ek-'e /a dr9g0 9rea'0a *9e0USB + F ko.ek-'e 7>Teer.g:;

    - O*-'a (a !r(o /k+'9)a.'e 0o!+.e 0re&e

    - No)a o.+a'. *roda).-a 7>Marke:; /a 0og9.o9 a9o0a/ke.adograd.'e a*+ka-'a

    - Podrka (a >9*+oad: *reko )e! *rera&)aa

    - Podrka (a ./a+ra.'e a*+ka-'a .a *ror)9 0e0or'9 70-roSD;

    - Podrka (a Ado!e F+a/ $#%$

    - Podrka (a /.0a.'e *rka()a.'e )dea 9 )/oko' re(o+9-' 3"#*%%%

    $"

    Android "." (28ro9o/$

  • 8/10/2019 Android Skripta 1-10

    13/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Kao o 'e )e .a)ede.o, *o'a)9 .o)e )er('e 'e /)akako o(.a+a *o'a)aAdo!e F+a/ *+a@era .a 0o!+.0 9rea'0a, ko'a 'e !+a *okrea.a od/ra.e grakog *ro-e/ora% O)a *odrka 'e (a()a+a !9r.e reak-'e od/ra.e ko.k9re.aa, *re /)ega a0erke ko0*a.'e A**+e, ko'a .'e &e+e+ada 9 /)o'e 9rea'e 0*+e0e.ra *odrk9 (a a/% Tada 'e .a/ao

    /)o'e)r/. 0ed'/k ra .a re+a-' A**+eAdo!e A**+eGoog+e%

    Pro-e/ ko' 'e (a*oe )er('o0 "%$, .a/a)+'e. 'e *ro-e/ 0gra-'e /ar)er('a .a ak9e+.9% O)og *9a G9g+ 'e 0ao .eo dr9ga' *r/9*, 9/arad.' /a o/a+0 *ro()oa0a *ro.ae. 'e .a. da /e !e&e )r.adograd.'a *o/o'e )er('a .a ak9e+.9% Tako da /9 e+e1o. ko' /9*r)o!.o +a./ra. /a )er('o0 "%$, 9!r(o do!+ .adograd.'9 .a "%" )er('9o*era).og //e0a%

    Sa o)o0 )er('o0 G9g+ *rekda da+'9 *ro()od.'9 *roda'9 /)og e+e1o.aGoog+e Ne9/ O.e, kako .e ! 9gro(o /)o'e *o/+o).e *ar.ere o0og9o*roda'9 e+e1o.a /k+'9)o *rogra0er0a ko' /9 rad+ .a ra()o'9 a*+ka-'a(a .'o) o*era). //e0%

    Ko.a.o, A.drod 'e !o do)o+'.o ko.k9re.a. o*era).o0 //e09ko0*a.'e E*+ 7>A**+e:;, ako da 'e )e+ko0 !r(.o0 *oeo da gra! r&.o9ee% Da ! kra'e0 /e god.e doao .a +der/k9 *o(-'9 re.9.o(a9(0a .a')e *ro-e.a ak). )er('a A.drod 0o!+.e *+a1or0e, aA.drod +der/k9 *o(-'9 .a r&9 0o!+. o*era). //e0a 9o*e%

    $=

  • 8/10/2019 Android Skripta 1-10

    14/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    1.1..Android ".0 (2Gin'erbread/$

    Po.o)o /e G9g+ *o)+a *r0r9'e .ared. 20e/e-, *re .ego o /e /k9+*9ra (+o&e.a

    kra'e0 Ma'a "#$#% god.e, .e (a0e.% 2%De-e0!ra "#$#% god.e o/)a.9+a 'e .o)a0a/koa /*red *ro/or'a r0e, .o)a )er('a

    'e !+a /*re0.a%

    U(0a'9 9 o!(r /)e )ee (ae)a 0o!+.ogr&a do+a/ka 9 *r) *+a. &e+'e kor/.kako'e /9 .ekad !+e 0arg.a+.e 7*o*9 =Dgr-a;, G9g+ 9 /arad.' /a '9&.o kore'/ko0ko0*a.'o0 Sa0/9.g ra()'a .o) e+e1o. 9

    /)re ra()o'a //e0a a*+ka-'a% >Goog+eNe9/ S: 'e roe.%Iako 'e *reod.e )er('e

    ()% G9g+ e+e1o.a ra()'ao a')a./k HTC, G9g+ 'e o)a' *9 (a!rao Sa0/9.gkako .e ! 1a)or(o)ao .'ed.og od *o/o'e *o/+o). *ar.era ko'9e/)9'9 9 ko.(or-'909 >OHA:%

    >Goog+e Ne9/ S: *red/a)+'e. 'e (a'ed.o /a.a'.o)'o0 )er('o0 o*era).og //e0aA.drod "%=, ko' .o/ kod. .a() Mede.'ak7>G.ger!read:;%

    I(.e)er) 0.oga oek)a.'a *ek9+a-'e,A.drod >G.ger!read: .'e doao /ao(.ako0 =%# kako /9 0.og oek)a+, )e"%=% Ver('a =%# kako e /e ka/.'e /a(.a

    !+a 'e re(er)/a.a (a 9+a(ak A.droda .a .o)o r&e, roe a!+e9rea'a%

    Po!o+'a.a' ko'a /9 do+a /a .o)o0 )er('o0, 9 od.o/9 .a *reod.9 /9!ro'.a, .a'(.aa'.'a /9 /+edea

    - Red(a'.ra. grak .er1e'/ 7>UI:;- Podrka (a ekra.e re(o+9-'e )ee od 5##?5#- VOIP *odrka- Podrka (a e!M4VP5 )deo- Podrka (a NFC 7>Near Fe+d Co009.-ao. >;- U.a*ree.a >-o*@4*a/e: 19.k-'a- No)a >09+o9-: a/a9ra- A9do, )deo graka 9.a*ree.'a .a0e.'e.a (a *rogra0ere

    ra()o'.e 0o)e )deo gara- Dodaa *odrka (a .o)e /e.(ore *o*9 &ro/ko*a

    $?

    Android ".0 (2Gin'erbread/$

    Goo'le 6e7us S

  • 8/10/2019 Android Skripta 1-10

    15/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    - Po!o+'a.a ko.ro+a e.erg'e a*+ka-'a- Podrka (a )e ka0era- Za0e.a >AFFS: >ET?: //e0o0 daoeka%%%

    Do /a0a 9 Bar/e+o. ko' 'e (a)re. $5% Fe!r9ara "#$$% Goog+e Ne9/ S,

    !o 'e 'ed. e+e1o. ko' 'e *ogo.'e. *o/+ed.'o0 )er('o0 o*era).og//e0a% Tre.9.o ak9e+.a )er('a 'e "%=%= ko'a 'e /*ra)+a //.e.edo/ake *r)o!.e "%= )er('e%

    O)de /e (a /ada (a)ra)a *red/a)+'a.'e ak9e+. )er('a o*era).og//e0a (a 0o!+.e 9rea'e A.drod, 9 /+edee0 *og+a)+'9 !e o*/a.e.o)e .a'a)+'e.e )er('e o)og //e0a, kako (a 0o!+.e e+e1o.e, ako (aa!+e 9rea'e%

    1.1.:.Android ".4 (2Gin'erbread/ 2+%e;ream/A**+e:; >Pad: ree.'a,/)e )e *r/ak .a G9g+ )r+ /9 *o/+o). *ar.er ko'0a 'e !+o.eo*od.o ree.'e o*era).og //e0a *r+agoe.og (a rad .a (.a.o)e0 ekra.0a od o. ko' /9 /e .a+a(+ .a 0o!+.0 e+e1o.0a% Nek*ar.er ./9 eka+ .a G9+g da *r+agod /)o' //e0 *ore!a0a a!+e9rea'a, )e /9 /a0o/a+.o 0odko)a+ do ada ak9e+.9 )er('9 A.drodo*era).og //e0a "%"%

    Sa0/9.g 'e oko0 "#$#% god.e *red/a)o /)o'*r) a!+e, Ga+a@ Ta! ko' 'e *okreao >Fro@o: /a

    *r+agoe.0 .er1e'/o0 *o/e!.o (a a!+e%

    $6

    Android ".4

  • 8/10/2019 Android Skripta 1-10

    16/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Iako 'e G9g+ )rdo da do/ada.'e )er('e ./9 *r+agoe.e (a rad /a a!+e9rea'0a, Ga+a@ Ta! do&)+'a)a )e+k r&. 9/*e, o doda.o *r/kaG9g+ da 9!r(a ra()o' .o)og //e0a (a e 9rea'e%

    1.1.>.Android 0.# (2?one9%omb/$

    "2% Ja.9ara "#$$% Pre0'er.o 'e *rka(a. *o*9.o.o) o*era). //e0 A.drod )er('e =%# ko' .o/kod. .a() Sae 7>Ho.e@-o0!:; % Za /adado/9*a. /a0o kao e/ )er('a, a+ /e )e*o'a)+'9'9 9rea' *okrea. o)0 o*era).0//e0o0%

    Pro0e.e ko'e do.o/ .o) o*era). //e0 /e od.o/e *re /)ega .a

    *r+agoe.o/ )e0 ekra.0a /a.&.'0 ko.g9ra-'a0aa!+e 9rea'a

    - No) grako .er1e'/ .a0e.'e. a!+e 9rea'0a- Rad.a *o)r.a 9 r d0e.('e 7=D; /a .o)0, red(a'.ra.0

    )d&e0a- No) .a. /09+a.og ()ra)a.'a a*+ka-'a 7>M9+a/k.g:;- Ve! *rera&)a .a*ra)+'e. *o/e!.o (a *ore!e a!+e 9rea'a- Podrka (a )deo a/ka.'e 7>Ca:; kor/e G9g+ a*+ka-'9 >Goog+e

    Ca:;

    - I.er1e'/ ko' /e ()ra)a .a .)o9 grakog *ro-e/ora 7>HardareA--e+erao.:;- Podrka (a *ro-eore /a )e 'e(1ara%%%

    Pr) 9rea' ko' kor/ .o)9 )er('9 o*era).og//e0a A.drod, =%# >Ho.e@-o0!: 'e Mooro+aoo0% O)a' 9rea' *o/ed9'e *ro-e/or /a d)a

    'e(gra, >.Vda Tegra": *ro-eor ko' *odr&a)a*9a.'e )dea 9 *ra)o' HD re(o+9-' $#5#*%Urea' 0a *red.'9 ka0er9 .a0e.'e.9 (a )deora(go)ore% S)e o)o ! re!a+o da *red/a)

    og+ed.e *red.o/ 9 od.o/9 .a ko.k9re./k>A**+e Pad: ko' 0a .edo/aak o) 0og9.o/%

    1.1.1#. Android 0.1

    O!'a)+'e. 9 Ma'9 "#$$%, *odr&a)a doda.e *o)e 9+a(. 9rea'a, USBo/ 0ode drek.o /a ka0era dr9g 9rea'a, Goog+e Mo)e/, Book/a**/ /+%

    $2

    Samsun' Gala79 Tab

    @otorola oom

    droid 0.# (2?one9%omb/$

  • 8/10/2019 Android Skripta 1-10

    17/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    1.1.11. Android 0."

    O!'a)+'e. 9 J9+9 "#$$% Doda.a o*0(-a'a (a ra(+e )e+.e ekra.a,9a)a.'a 0eda 1a'+o)a drek.o /a SD kar-e, d%

    1.1.1". Android 4 (2+%e ream SandBi%h/$

    ?%# I-e Crea0 Sa.d-, o!'a)+'e. 9 Oko!r9 "#$$%No)e 19.k-o.a+.o/ ok+'9a)a.'e e+e1o.a .ao/.o)9 +-a, 9*ra)+'a.'e ko09.ka-'o0 *reko0re&e, 9*ra)+'a.'e ak).o/0a .a dr9/)e.0

    0re&a0a .a 'ed.o0 0e/9, *o!o+'a.o 9*ra)+'a.'e1oogra'a0a, *reraga 0a+o)a oW.e, a** 1o+der,NFC% Po/+ed.'a /a!+.a )er('a 'e A.drod ?%#%$%

    1.1.10. Android 4.1 (!ell9 Cean$

    Ver('a A.drod ?%$ *od .a()o0 Je++@ Bea. od '9+a "#$"%

    1.".8unk%ionalnosti Android OS

    O/.o).e 19.k-o.a+.o/ A.drod OS Prka( .a 9rea'0a OS *r+agoa)a (g+ed ra(+0 *o)0a

    9rea'a ko0*a!+a. 'e /a "D, =D grak0 !!+oeka0a

    Sk+ade.'e *odaaka SL +e re+a-o.a !a(a *odaaka (a9*ra)+'a.'e *oda-0a

    Ko.ek).o/ A.drod *odr&a)a ko.ek).o/ /a /)0 /a.dard.0e.o+og'a0a GSM4EDGE, IDEN, CDMA, EVDO, UMTS, B+9eoo,F, LTE MA%

    Ra(0e.a *or9ka SMS MMS

    e! !ro/er e!K !ro/er, (a/.o)a. .a Cro0e9

    $3

  • 8/10/2019 Android Skripta 1-10

    18/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Ja)a /9**or A.drod a*+ka-'e /e *9 9 Ja)a *rogra0/ko0 'e(k9,Da+)k )r9e+.a 0a.a

    Podrka (a 09+0ed'a+.e *odake e!M, H%"2=, H%"2?, MPEG?SP, AMR, AMRB, AAC, HEAAC, MP=, MIDI, Ogg Vor!/, AV, JPEG,PNG, GIF, BMP%

    Srea0.g 0eda /9**or RTP4RTSP /rea0.g 7=GPP PSS, ISMA;,HTML do.+oad 7HTML6 X)deoY ag;, Ado!e F+a/ Srea0.g7RTMP;, HTTP [email protected] Srea0.g

    Doda.a arder/ka *odrka ka0era, o9-/-ree., GPS,!r(.o0ear, &ro/ko*, 0ag.eo0ear, /e.(or 9da+'e.o/ *r/ka,er0o0er

    Okr9&e.'e (a ra()o' A.drod De)e+o*0e. P+9g.

    Tr&e Goog+eP+a@ 'e o.+.e kaa+og a*+ka-'a ko'e /e 0og9*re9(e ./a+ra .a A.drod 9rea'e, !e( *ore!e (a ra9.aro0%

    M9+o9- 0og9.o/ 9rea'a da *re*o(.a r ra(+e *o(-'e9+a(. dodra>

    B+9eoo

    Vdeo *o()

    M9+a/k.g 09+a/k.g a*+ka-'a

    F9.k-o.a+.o/ (a/.o)a.e .a g+a/9 Po()a.'e, *reraga, .a)ga-'a*o0o9 g+a/a

    Teer.g A.drod e+e1o. 0o&e da /e /kor/ kao re+e// o/*o

    $5

    https://play.google.com/store/appshttps://play.google.com/store/apps
  • 8/10/2019 Android Skripta 1-10

    19/153

    Slo& aplika%i&e

    Sa.dard.ea*+ka-'e

    Ko.ak A*+ka-'e*ro()oaa

    Prera&)a %%%

    Okvir aplika%.(8rameBork$

    U*ra)+'a.'eak).o/0a

    U*ra)+'a.'e*ro(or0a

    Pro)a'der/adr&a'a

    U*ra)+'a.'eo!a)ee.'0a

    U*ra)+'a.'e

    *ake0a

    U*ra)+'a.'e

    re/9r/0a

    U*ra)+'a.'e

    +oka-'a0a

    MPP /er)/

    Ciblioteke

    S9r1a-eMa.ager

    SLe FreeT@*e

    e!K SSL O*e.GL[ES

    AndroidDuntime

    B!+oeke 'e(gra

    Da+)k )r9e+.a0a.a

    Einu7 Fernel

    Dra')er (ad/*+e'

    Dra')er (aka0er9

    Dra')er (aB+9eoo

    Dra')er (a e0e0or'9

    Dra')er (a USB Dra')er (aa/a9r9

    F dra')er A9do dra')er

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    1.0.Arhitektura Android sistema

    Arek9ra A.drod //e0a !a(ra /e .a L.99 ",2 'e(gr9 7e.g% ker.e+;ko'a /e kor/ kao /+o' a*/rak-'e ard)era 7HAL, e.g% Hard)areA!/ra-o. Laer;% Ra(+og (a kore.'e 'e(gra o*era).og //e0a L.9

    'e doka(a.a *ogo./ka *odrka 7e.g% dr)er 0ode+;, 0og9.o/ 9*ra)+'a.'a0e0or'o0 *ro-e/0a, /g9r.o/. 0ode+, 0re&. //e0, e doka(a.aro!9/.o/, ko./a.. ra()o' 9.a*re)a.'e //e0a% S+ka $%" *rka(9'earek9r9 A.drod //e0a%

    Slika 1.". Arhitektura Android platforme

    $

  • 8/10/2019 Android Skripta 1-10

    20/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    1.0.1.Einu7 &e)'ro

    Na')a&.' e+e0e. 'e(gra /9 *ogo./k *rogra0 (a 0e9*ro-e/.9 ko09.ka-'9 (0e9 a*+ka-'a

    9/+9ga 7e.g% /er)-e; 7e.g% B.der 7IPC; Dr)er;

    9*ra)+'a.'e .a*a'a.'e0 7e.g% Po)er Ma.age0e.; ko0*o.e.aA.droda e0e+'e.a .a /a.dard.o0 L.9o)o0 //e09 9*ra)+'a.'a.a*a'a.'e0%

    1.0.".+)vorne pro'ramske biblioteke

    I()or.e *rogra0/ke !!+oeke 7e.g% .a)e +!rare/; */a.e /9 9*rogra0/k0 'e(-0a

    C CQQ .e /+ede /+o' 9 arek9r //e0a% Neke od (.aa'.' /9 + *rogra0 (a 9*ra)+'a.'e grak0 .er1e'/o0 7e.g% S9r1a-e

    Ma.ager; !!+oeka odgo)or.a (a *ra)+.o /-ra)a.'e ra(+a*+ka-o. ko0*o.e. 9 )re0e.9 *ro/or9

    OpenGE 5S7e.g% O*e.GL 1or E0!edded S/e0/; !!+oeke ko'e/e kor/e (a ard)er/k9 =D ak-e+era-'9 79ko+ko 'e *odr&a.a; + (a=D ra/er(a-'9

    SGE7e.g% S-a+a!+e Gra*-/ L!rar; *red/a)+'a "D !!+oeke .ako'0a 'e (a/.o)a.a )e.a a*+ka-'a% S*o0e.0o 'o da /e "D =D

    e+e0e. 0og9 ko0!.o)a.o *rka()a 9 'ed.o0 kor/.ko0.er1e'/9

    @edia 8ramevork gr9*a kodeka (a /.0a.'e re*rod9k-'9 a9do1or0aa, )deo 1or0aa .e*o0. /+ka% O0og9e.a 'e od /ra.ePa-keVdea

    8reeTipe !!+oeka ko'a /+9& (a )ekor/k9 ra/er(a-'9 o!+ka*/0a 7e.g% 1o.;

    SSE7e.g% Se-9re So-ke Laer; o0og9a)a re(er).9 ko09.ka-'9*reko I.er.ea

    SFEite *rogra0/ka !!+oeka ko'a 0*+e0e.ra !a(9 *odaaka7e.g% daa!a/e e.g.e;

    HebFit Je(gro *rera&)aa ko' *odr&a)a Ja)aS-r* o/a+e/a.darde .a 0a+o0 9rea'9

    Sistem librar9 0*+e0e.a-'a /a.dard.e Co)e //e0/ke!!+oeke 7+!-; ()ede.e ( o*era).og //e0a BSD%

    "#

  • 8/10/2019 Android Skripta 1-10

    21/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    1.0.0.Dadno okruen&e Android Duntime (3alvik Hirtual @a%hine$

    Nared. /+o' 9 arek9r A.droda 'e rad.o okr9&e.'e 7e.g% A.drodr9.0e; ko'eg .e )r9e+. 0a.a Da+)k 7DVM, e.g% Da+)k Vr9a+Ma-.e; 'e(gre.e !!+oeke 7e.g% -ore +!rar@;%DVM 'e reg/ar/k !a(ra.a )r9e+.a 0a.a, dok 'e k+a/.a Ja).a)r9e+.a 0a.a 7JVM, e.g% Ja)a Vr9a+ Ma-.e; !a(ra. .a /ek9% Ba(.e!!+oeke */a.e /9 9 *rogra0/ko0 Je(k9 Ja)a *red/a)+'a'9 /)ee/e.-'a+.e k+a/e kao o /9 k+a/e (a 0a.*9+a-'9 ko+ek-'a0a, k+a/e (ako09.ka-'9 /a oko+.o0 /+.o% B.a .o)o/ 'e o o /e A.drodo0

    'e(gre.e !!+oeke ra(+k9'9 od !!+oeka 9 Ja)a Sa.dard Edo. 7J"SE; Ja)a " M-ro Edo. 7J"ME;%

    U0e/o 9*ore!e /a.dard.og Ja)a " M-ro Edo. 7J"ME; kao 0ea.(0a

    (a *okrea.'e Ja). a*+ka-'a .a *okre.0 9rea'0a, Goog+e 'e ra()o/o*/)e.9 )r9e+.9 0a.a (a A.drod% DVM Je .a')ero)a.'e ra()'e.kako ! /e (ao!+a *ro!+e0aka / do()o+a0a kore.'e0 S9.o)og J"ME%S)ak *okre. 9rea' ko' 9 /e! /adr& J"ME 0ora kod S9.a +-e.-ra !+okak)9 *ro0e.9 ()or.og koda J"MEa%

    Vr9e+.a 0a.a Da+)k do!+a 'e 0e *o /o0e.o0 I/+a.d/ko0 grad9 9ko'e0 /9 &)e+ *re- g+a).og de)e+o*era DVMa Da. Bor./e.%

    O/.o).a ra(+ka (0e9 S9. Ja)a )r9e+. 0a.a DVMa 'e 9 o0e o/9 *r)o /*o0e.9 )r9a+. 9rea'9 !a(ra. .a /ek9, dok 'e DVMreg/ar/k !a(ra. )r9e+. 0a.a% Me9kod 7e.g% !e-ode; Da+)k)r9e+.e 0a.e ra./1or0e /e *o0o9 a+aa dk 7ko' 'e /a/a). deoA.drod SDKa; ( Ja). k+a/. daoeka 7e.g% Ja)a -+a// +e; *re)ede.

    Ja).0 *re)odo-e0 9 .o)9 k+a/9 *.dex7e.g% Da+)k Eke-9a!+e; 1or0aa%Me9kod ko' ()ra)a DVM .'e Ja). 0e9kod, .ego 9*ra)o /*o0e.9.dexo!+k% Tra./1or0a-'a 1or0aa o0og9a)a !o+'9 *r+agoe.o/ (a rad.a 0a.'0 *ro-e/or0a !o+'0 /kora)a.'e0 ra/*o+o&)e 0e0or'e *ro-e/or/ke /.age% Re(9+a /)ega 'e 0og9.o/ )e/r9kog ./a.-ra.'a

    /a0e )r9e+.e 0a.e o (.a da /e /)aka A.drod a*+ka-'a *okreekao (a/e!. *ro-e/, / )+a/o0 ./a.-o0 )r9e+.e 0a.e Da+)k%

    1.0.4.Appli%ation 8ramevork

    S+o' a*+ka). ok)ra 7e.g% A**+-ao. Fra0e)ork; .a*/a. 'e 9*rogra0/ko0 'e(k9 Ja)a /adr& *ror) /k9* *rogra0/k ko0*o.e.ko'eg kor/e /)e a*+ka-'e 9rea'a% Fra0eork *odr&a)a 0.ogo!ro'.eo*e. /o9r-e 'e(ke kao o /9 o*e.//+, /\+e +!-% Takoe *odr&a)a 'e(kA.drod 'e(gra% Sa g+eda /g9r.o/, 1ra0eork /e !a(ra .a UNI +e

    "$

  • 8/10/2019 Android Skripta 1-10

    22/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    /@/e0 o)+ae.'0a ko'a o/g9ra)a'9 da a*+ka-'e *o/ed9'9 /a0o o.e0og9.o/ ko'e 0 'e )+a/.k e+e1o.a dao *r ./a+a-' a*+ka-'e%

    Nek od )a&.' e+e0e.aa /9 9*ra)+'a.'e ak).o/0a 7e.g% A-) Ma.ager; 9*ra)+'a.'e

    &)o.0 -k+9/o0 a*+ka-'e, 9*ra)+'a.'e *rogra0/k0 *ake0a 7e.g% Pa-kage Ma.ager;

    /adr& .1or0a-'9 o a*+ka-'a0a ./a+ra.0 .a //e09 9*ra)+'a.'e *ro(or0a 7e.g% .do Ma.ager; 9*ra)+'a.'e

    a*+ka-o.0 *ro(or0a, 9*ra)+'a.'e *o()0a 7e.g% Te+e*o.e Ma.ager; /adr& API'e ko'

    /e kor/e *r (rad a*+ka-'a (a 9*ra)+'a.'e *o()0a, *r9&ao- /adr&a'a 7e.g% Co.e. Pro)der/; o0og9a)a'9

    (a'ed.ko kore.'e *odaaka od /ra.e )e a*+ka-'a, 9*ra)+'a.'e re/9r/0a 7e.g% Re/o9r-e Ma.ager; /+9& (a

    /k+ade.'e de+o)a a*+ka-'e ko' ./9 kod 7.*r% /+ke;, //e0 grakog *rka(a 7e.g% Ve) S/e0; /adr& !a(9 goo)

    grak *rka(a a+aa 7e.g% )dge;, 9*ra)+'a.'e +oka-'/k (a/.o)a.0 9/+9ga0a 7e.g% Lo-ao.

    Ma.ager; 9*ra)+'a.'e .oka-'a0a 7e.g% No-ao. Ma.ager; 9*ra)+'a.'e

    .oka-'a0a dogaa'0a 7.*r% do/*ee *or9ke, .ado+a(e

    /a/a.ak;%

    A*+ka). /+o' 'e *o/+ed.' /+o' 9 arek9r //e0a A.drod .e gakor/.ke a*+ka-'e 9rea'a% Pred/a)+'a /+o' )d+') kra'.'e0 kor/.k9%Uk+'99'e .eke od /a.dard. //e0/k a*+ka-Ja kao o /9 Ve!*rera&)a, +/a ko.akaa, e+e1o., d%

    1.0.-.+nte'risani pretraiva

    Goog+e 'e .a*ra)o *ra) *oe( (!oro0 e!K kao o*e. /o9r-e e!

    *rera&)aa% U!a-+ /9 d)a )eo0a !.a *o!o+'a.'a, o *a// +a@o9 1ra0e ae..g% To *a// +a@o9 o)ara /ra.-9 !e( eka.'a .a!+okra'9e e+e0e.e, kao o /9 ek/er. CSS + ek/er. Ja)aS-r*, a+*o/+e kraeg *eroda *o.o)o o)ara /ra.-9 /a /)0 *oda-0a .a /ra.%Fra0e ae..g ko.)er9'e *o/o'ee ok)re /ra.-e 9 'eda. ok)r a'ok)r *oka(9'e .a ekra.9% O)a *o!o+'a.'a *o/*e9'9 !r(.9 kor/.o//9r1o)a.'a .er.eo0 *reko 0o!+.og e+e1o.a%

    1.0..Optimi)ovana 'ra*ka

    Kako A.drod *o/ed9'e "D grak9 =D grak9 (a/.o)a.9 a. O*e.GL ES$%#, )r+o 'e 0og9e da e0o )de Goog+e Ear /*ekak9+ar.e gre kao

    ""

  • 8/10/2019 Android Skripta 1-10

    23/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    o 'e Se-o.d L1e, ko'e do+a(e .a L.9 //e00a% U o)o0 re.9k9,+ege.dar.a =D *9-aka gra Doo0 'e *red/a)+'e.a .a 0o!+.0e+e1o.0a ko' 0a'9 A.drod *+a1or09%

    1.0.:.SIEite

    SLe 'e )eo0a 0a+ 7oko 6##k!; //e0 (a 9*ra)+'a.'e re+a-o.0 !a(a0a*odaaka, ko' 'e .egr/a. 9 A.drod% Za/.)a /e .a *o()0a 19.k-'a

    'ed./)e. 1a'+o)a, gde /e 9)a'9 /)e de.-'e, a!e+e *oda-% O)a''ed.o/a)a. d(a'. 'e )e .ego *ogoda. (a *+a1or09 kao o 'e A.drod%Po/o' )e+k !ro' karaker/ka ko'e (a)/e od ard)era, kao o /9 )e+kako+.a 09+0ed'a+. 1a'+o)a, *odrka ko.ek-'a, GPS, 9.a*ree.a*odrka (a ka0er9 'ed.o/a).a GSM e+e1o.'a%

    1.4.Da)vo& Android aplika%i&a

    A.drod a*+ka-'e /e 0og9 */a 9 Ja)a + C *rogra0/ko0 'e(k9% A.drodSDK a+a ko0*a'+ra'9 kod, (a'ed.o /a o/a+0 *oda-0a re/9r/0aa*+ka-'e 9 A.drod *a-kage, %'% 1a'+ /a %a*k /9k/o0% Kod ko' /e .a+a( 9ok)r9 %a*k 1a'+a *red/a)+'a A.drod a*+ka-'9% Kada /e a*+ka-'a 'ed.o0./a+ra .a 9rea', o.a *o/a'e .e(a)/.a -e+.a 9 ok)r9 //e0a

    A.drod OS 'e 09+9/er L.9 //e0 gde /e /)aka a*+ka-'a rera

    kao 'ed./)e. kor/.k

    S/e0 dode+'9'e a*+ka-' 'ed./)e. L.9 9/er d% S/e0 *odea)ado()o+e (a /)e 1a'+o)e 9 ok)r9 a*+ka-'e, ako da /a0o a*+ka-'a /aodree.0 9/er d 0o&e da 0 *r/9*

    S)ak *ro-e/ *o/ed9'e /o*/)e.9 )r9a+.9 0a.9, ako da 'ed.aa*+ka-'a 0o&e da /e ()ra)a .e(a)/.o od dr9g

    S)aka a*+ka-'a /e ()ra)a 9 ok)r9 /)og L.9 *ro-e/a

    A*+ka-'a 0o&e (ae)a *r/9* *oda-0a .a 9rea'9 kao o /9/k+ade *odaaka, kor/.k ko.ak, SMS *or9ke, B+9eoo, d%

    1.4.1.Fomponente aplika%i&a

    O/.o). e+e0e. /)ake A.drod a*+ka-'e /9 .'e.e ko0*o.e.e, ko'eodre9'9 *o.aa.'e karaker/ke a*+ka-'e% S/e0 0o&e da *r/9* ko09.-ra /a a*+ka-'o0 *reko .'e. ko0*o.e.aa% Po/o' er *a

    ko0*o.e.aa a*+ka-'e

    "=

  • 8/10/2019 Android Skripta 1-10

    24/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Aktivnost

    Ak).o/ *red/a)+'a 'eda. ekra. /a kor/.k0 .er1e'/o0% Na *r0ere0a+ a*+ka-'a 0o&e 0a 'ed.9 ak).o/ ko'a *rka(9'e +/9 .o)0e'+o)a, dr9ga ak).o/ o0og9a)a */a.'e 0e'+a, a rea ak).o/ /+9&

    (a a.'e 0e'+o)a% Iako /9 ak).o/ 9 ok)r9 'ed.e a*+ka-'eko0*o.o)a.e koord.ra.e ako da *red/a)+'a'9 +ogk9 -e+.9, /)aka od.' 'e .e(a)/.a% U /k+ad9 /a 0, ra(+e a*+ka-'e 0og9 da /ar9'9ak).o/ ( dr9g a*+ka-'a% Na *r0er a*+ka-'a (a rad ka0ere, 0o&e/aro)a ak).o/ ( e0a+ a*+ka-'e kako ! o0og9+a de+'e.'e1oogra'a .a dr9)e.o' 0re&% S)aka ak).o/ /e 0*+e0e.ra kao*odk+a/a k+a/e A-)@%

    Servisi (Servi%es$

    Ser)/ 'e ko0*o.e.a ko'a /e ()ra)a 9 *o(ad. kako ! /e o0og9+area+(a-'a d9gora'. o*era-'a, kao ()ra)a.'e 9da+'e. *ro-e/a%Ser)/ .e *r9&a kor/.k .er1e'/% Na *r0er, /er)/ 0o&e da *9a09(k9 9 *o(ad. dok /e kor/.k .a+a( 9 .eko' dr9go' a*+ka-'a%Ak).o/ 0o&e da *okre.e /er)/

    Jrova&deri sadra&a (ontent providers$

    Pro)a'der /adr&a'a 9*ra)+'a de+'e.0 /eo0 *odaaka a*+ka-'e% Poda- /e0og9 /k+ad 9 1a'+ //e09, !a(, .a )e!9 + !+o ko'o' *er(/e..o'+oka-' ko'o' a*+ka-'e 0o&e da *r/9*% Preko *ro)a'dera /adr&a'a

    a*+ka-'a 0o&e da )r 9* .ada *oda-0a% Na *r0er, A.drod *r9&a*ro)a'dera /adr&a'a ko' 9*ra)+'a .1or0a-'a0a o 0e.k9 .a e+e1o.9%S)aka a*+ka-'a /a odgo)ara'90 *er0/'a0a, *reko *ro)a'dera /adr&a'a0o&e da *r/9* ko.ak0a 9 0e.k9%

    Croad%ast re%eivers

    O)a ko0*o.e.a a*+ka-'e 'e )e(a.a (a *re.o/ //e0/k o!'a)a .oka-'a% Ve.a !road-a/ re-e)era *oe ( //e0a o!a)ee.'eda 'e !aer'a /+a!a, + da 'e /+ka .a*ra)+'e.a /+% O)a ko0*o.e.a .e9e/)9'e 9 kor/.ko0 .er1e'/9, a+ 0o&e da /e *o'a) kao .oka-'a

    +a0*-e /+%

    Jed./)e.a karaker/ka A.drod OS 'e 9 o0e o /)aka a*+ka-'a 0o&e/aro)a ko0*o.e.e ( .eke dr9ge a*+ka-'e%

    Ko0*o.e.e a*+ka-'e /e ak)ra'9 *reko a/.ro.e *or9ke .e.a% S)eko0*o.e.e 'ed.e a*+ka-'e /e de.9 9 ok)r9 A.drodMa.1e/%0+1a'+a% S)aka A.drod a*+ka-'a o/0 koda /adr& odgo)ara'9e re/9r/e,kao o /9 /+ke, a9do 1a'+o), /+o), d%

    "?

  • 8/10/2019 Android Skripta 1-10

    25/153

  • 8/10/2019 Android Skripta 1-10

    26/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika ".1 K Strana )a preu)iman&e !3F

    K+ko0 .a a/er Download JDK, o)ore /e /ra.-a gde 'e 0og9e (a!ra*+a1or09 (a ko'9 /e *re9(0a *ake 7S+ka " %";%

    Slika "." K +)bor platforme

    Nako. (!ora *+a1or0e, *ore!.o 'e k+k.9 .a -e-k!o I agree a/erContinue% Sada e /e o)or /ra.a .a ko'o' 'e *rka(a. .a() 1a'+a (a*re9(0a.'e 7S+ka " %=;%

    Slika ".0 K +)bor fa&la )a preu)iman&e

    K+ko0 .a .a() 1a'+a, (a*oee /e/a *ro-e/o0 *re9(0a.'a% Po (a)rek9*re9(0a.'a /aro)a.'9 1a'+a, kre.9e *ro-e/ ./a+a-'e JDKa 7S+ka " %?;%Pore!.o 'e *ra ./r9k-'e /a ekra.a%

    "2

  • 8/10/2019 Android Skripta 1-10

    27/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika ".4 K +nstala%i&a !3F

    S+ede korak 'e/e ./a+a-'a E-+*/e I.egraed De)e+o*0e. E.)ro.0e.a7ra()o'.o okr9&e.'e;% N'ega 'e 0og9e !e/*+a.o *re9(e /a adre/e*44%e-+*/e%org4do.+oad/4 % E-+*/e ra()o'.o okr9&e.'e *odr&a)a.do/, L.9 Ma-OS o*era).e //e0e, kao a) .( *rogra0/k 'e(ka%

    Mog9e 'e kor/ !+o ko'9 )er('9 E-+*/ea ko'a *odr&a)a Ja)a *rogra0/k 'e(k%Poo .a /a'9 (a *re9(0a.'e E-+*/e ra()o'.og okr9&e.'a *o/o' )e+k !ro'ra(+ )er('a, od+9e0o /e (a .a''ed.o/a).'9 )er('9 ko'a *odr&a)a Ja)a*rogra0/k 'e(k% To 'e E-+*/e IDE 1or Ja)a De)e+o*er/ 7S+ka " %6;%

    "3

    http://www.eclipse.org/downloads/http://www.eclipse.org/downloads/
  • 8/10/2019 Android Skripta 1-10

    28/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika ".- K Sa&t )a preu)iman&e 5%lipse ra)vo&no' okruen&a

    Nako. (!ora )er('e E-+*/ea, re!a (a!ra 0rror /a' /a koga e /e*re9(0a.'e ()% Od (a!ra.og .a.a *re9(0a.'a 'ed.o (a)/ !r(.a /a0og

    do.+oada, e o)a' (!or .'e od *re/9d.e )a&.o/% Mo&ee (a!ra *r)*re*or9e. /a' 7S+ka " %2;%

    Slika ". K +)bor mirror sa&ta sa ko'a e se preu)eti 5%lipse +35

    E-+*/e IDE .e0a /o*/)e. *rogra0 (a ./a+a-'9% O. /e 'ed.o/a).o .a+a((a*ako)a. 9 ok)r9 'ed.e ZIP ar)e% Nako. 9/*e.og *re9(0a.'a, do)o+'.o 'era/*ako)a 9 ar)9 9 &e+'e. 1o+der 7.*r% C], ako da e ko.a.a *9a.'a E-+*/eIDEa ! C]e-+*/e;, o 'e *rka(a.o .a /+- "%3%

    "5

  • 8/10/2019 Android Skripta 1-10

    29/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika ".: K Daspakivan&e 5%lipse ra)vo&no' okruen&a

    Poo E-+*/e IDE .'e ./a+ra. .a 9o!a'e. .a., ra/*ak)a.'e0 ./9*o/a)+'e.e *re-e ()r.og 1a'+a .a rad.9 *o)r.9 9 Sar 0e.% To 'e 0og9e9rad r9.o% Na'*re re!a o 9 1o+der C]e-+*/e 7od.o/.o 9 1o+der gde 'eE-+*/e ra/*ako)a.; k+k.9 .a 1a'+ e-+*/e%ee de/.0 a/ero0 0a, a (a0(a!ra o*-'9 Copy% Poo0 re!a k+k.9 .a *ra(a. deo rad.e *o)r.e de/.0

    a/ero0 0a (a!ra o*-'9 Paste shortcut%

    S+ede korak 'e/e ./a+a-'a A.drod So1are De)e+o*0e. Ka 7SDK;% N'ega'e 0og9e !e/*+a.o *re9(e /a /a'a*44de)e+o*er%a.drod%-o04/dk4.de%0+ % Na .a)ede.o0 /a'9 'e *ore!.o(a!ra )er('9 (a &e+'e. o*era). //e0% U /+9a'9 .do/a, *re*or9+')o 'e*re9(e ee daoek9, *oo 'e o )er('a SDK /a 9grae.0 *rogra0o0 (a./a+a-'9 7S+ka " %5;% Kod dr9g o*era). //e0a, do)o+'.o 'e o*ako)adaoek9 9 &e+'e. 1o+der%

    Slika ".= K +)bor ver)i&e Android S3F )a preu)iman&e

    Sada 'e 0og9e /aro)a ./a+a-'9, gde 'e *ore!.o *ra ./r9k-'e /a ekra.a7S+ka " %

  • 8/10/2019 Android Skripta 1-10

    30/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika ".> K +nstala%i&a Android S3F

    Po (a)rek9 ./a+a-'e, /aro)ae /e SDK Ma.ager% O)de 'e 0og9e (a!ra)er('e A.drod APIa ko'e /e 0og9 *re9(e%

    Slika ".1# K S3F @ana'er

    I(!or )er('e A.drod APIa )eo0a 'e )a&a., (ao o od oga drek.o (a)/ da +e a*+ka-'a rad .a odree.o0 0o!+.o0 e+e1o.9 + a!+e 9rea'9% Na *r0er,ako /e (a!ere )er('a =%# APIa, a*+ka-'a /)akako .ee rad .a /ar'0 A.drode+e1o.0a% No)e )er('e APIa 0a'9 .ara).o )e 19.-o.a+.o/, a+ 0a.'9ko0*a!+.o/ /a /ar'0 9rea'0a%

    I(!oro0 o*-'e Accept All 7S+ka " %$#; k+ko0 .a a/er Install (a*oee /e

    *re9(0a.'e ./a+a-'a /) )er('a APIa, *raee dok90e.a-'e *r0era%Ver('a APIa (a ko'9 e /e krera a*+ka-'a !ra /e .ak.ad.o%

    =#

  • 8/10/2019 Android Skripta 1-10

    31/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Nako. (a)re.og *re9(0a.'a *ore!. 1a'+o)a, ./a+ra.e ko0*o.e.e 'e0og9e )de 9 ode+'k9 Installed Packages% Nak.ad.o 'e 0og9e ./a+ra .o)9)er('9 APIa (!oro0 o*-'eAvailable Packages7S+ka " %$$;%

    Slika ".11 K Op%i&a Available Ja%ka'es

    O)de ! re!a+o (a!ra Goog+e I.-% addo./, (ao o o) *ake 9k+'99'9 doda.e

    !!+oeke (a rad /a Goog+e /er)/0a% Nako. (!ora, re!a k+k.9 .a d9g0eInstall elected (a0 *r)a +-e.-9, 0e e /e *ore!.e daoeke *re9(e%

    U ok)r9 SDK Ma.agera 0og9e 'e krera *ode/ )r9e+.e A.drod 0o!+.e9rea'e, ko' /e kor/e *r+ko0 e/ra.'a a*+ka-'e% Pore!.o 'e (a!ra o*-'9!irtual Devices% O)de /e *rka(9'e /*/ak *odee. )r9e+. A.drod 9rea'a%K+ko0 .a a/er "ew0og9e 'e krera .o) 9rea' 7S+ka " %$";%

    =$

  • 8/10/2019 Android Skripta 1-10

    32/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika ".1" K Hirtuelni ureLa&i

    U .o)oo)ore.o0 *ro(or9 0og9e 'e *ode/ *ara0ere )r9e+.og 9rea'a% U*a.'9 /9 /+ede *ara0er

    6ame *ro()o+'a. .a() )r9e+.og 9rea'a% Tar'et )er('a A.drod APIa ko'9 kor/ 9rea'% S3 ard *odea)a.'a )r9e+.e 0e0or'/ke kar-e% Uko+ko /e (a!ere

    o*-'a i#e, 0og9e 'e (ada )e+.9 .o)e )r9e+.e 0e0or'/ke kar-e%Uko+ko /e (a!ere o*-'a $ile, 0og9e 'e 9a /adr&a' 0age 1a'+a kao)r9e+.9 0e0or'/k9 kar-9%

    Snapshot 9ko+ko /e (a!ere o*-'a %nabled, o0og9e /e *a0e.'e/a.'a )r9e+.og 9rea'a ka/.'e 9a)a.'e og /a.'a *r+ko0 *o.o).og9k+'9)a.'a )r9e+.og 9rea'a% O*-'a napshot'e /+.a o*-' &ibernate9.do/ o*era).o0 //e09%

    Skin *red/a)+'a re(o+9-'9 ekra.a )r9e+.og 9rea'a% Mo&e /e (a!ra.eka od *rede./a. /a.dard. re(o+9-'a 7'uilt(in; + /e 0o&e (ada*ro()o+'.a )red.o/ re(o+9-'e 7)esolution;%

    ?ardBare *r+ko0 krera.'a )r9e+.og 9rea'a, 0o&e /e (a!ra)r9e+. ard)er ko' 9rea' /adr& 7.a *r0er GPS *r'e0.k, 0e0or'/kakar-a, ka0era dr9go;%

    Na *r0er, krerae0o .o) )r9e+. 9rea' /a *ara0er0a kao .a /+- "%$=%Nako. 9.o/a )red.o/ *ara0eara, k+k.9e0o .a a/er Create A!D, 0e e.o) A.drod )r9e+. 9rea' ! /a9)a.%

    ="

  • 8/10/2019 Android Skripta 1-10

    33/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika ".10 K Freiran&e novo' Android virtuelno' ureLa&a

    Sada re!a (a ( SDK Ma.agera *okre.9 E-+*/e ra()o'.o okr9&e.'e% Pr+ko0*r)og /aro)a.'a o)og okr9&e.'a, *ore!.o 'e (a!ra +oka-'9 ork/*a-ea%ork/*a-e 9 /)ar *red/a)+'a 1o+der 9 ko0e e /e .a+a( *ro'ek rae. 9E-+*/e ra()o'.o0 okr9&e.'9% ork/*a-e /e o!.o .a+a( 9 ok)r9 +.og 1o+derao*era).og //e0a 7S+ka " %$?;% Uko+ko o*-'a se this as the de+ault and donot ask again .'e (a!ra.a, kor/.k e +oka-'9 ork/*a-ea !ra *r+ko0/)akog *okrea.'a E-+*/e ra()o'.og okr9&e.'a% Nako. o)og *odea)a.'a re!ak+k.9 .a a/er ,K%

    Slika ".14 K +)bor loka%i&e Borkspa%e;a

    Sada 'e .eo*od.o ./a+ra dodaak ko' o0og9a)a .egra-'9 E-+*/e IDEa A.drod SDKa% Pore!.o 'e (a!ra 0e. &elp, a (a0 o*-'9 Install "ewo+tware7S+ka " %$6;%

    ==

  • 8/10/2019 Android Skripta 1-10

    34/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika ".1- K +)bor op%i&e Install New Software

    O)ore /e .o) *ro(or, 9 ko0e re!a k+k.9 .a d9g0eAdd7S+ka " %$2;%

    Slika ".1 K 3i&alo' Install New Software

    U .o)oo)ore.o0 *ro(or9 9 *o+'e "a-e re!a 9.e A.drod, a 9 *o+'e ocationre!a 9*/a */44d+//+%goog+e%-o04a.drod4e-+*/e4, kao o 'e *rka(a.o .a/+- "%$3% Za0 re!a (a!ra o*-'9 ,K%

    Slika ".1: K 3odavan&e repo)itori&uma

    Po/+e .eko+ko re.9aka, re!a+o ! da /e *o'a) *ro(or kao .a /+- "%$5% Pore!.o

    'e /e+eko)a Developer /ools, 0e e ! (a!ra.e /)e *odo*-'e, a (a0k+k.9 .a a/er "ext%

    =?

    https://dl-ssl.google.com/android/eclipse/https://dl-ssl.google.com/android/eclipse/
  • 8/10/2019 Android Skripta 1-10

    35/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika ".1= K +)bor op%i&a

    Za0 'e *ore!.o *o)rd (!or *o.o).0 k+ko0 .a "ext 7S+ka " %$

  • 8/10/2019 Android Skripta 1-10

    36/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika "."# K Jrihvatan&e li%en%i

    O)0 'e (a*oeo *ro-e/ ./a+a-'e dodaaka (a E-+*/e% Uko+ko /e *o'a) *ro(orko' o!a)ea)a kor/.ka da /adr&a' ko' /e *re9(0a .e0a dga+. *o*/,*ore!.o 'e k+k.9 .a a/er ,K, 0e /e o0og9a)a ./a+a-'a 7S+ka " %"$;%

    Slika "."1 K Obaveten&e o nepotpisanom sadra&u

    Nako. (a)reka ./a+a-'e, *ore!.o 'e *o.o)o *okre.9 E-+*/e ra()o'.ookr9&e.'e 7S+ka " %"";%

    Slika "."" K Obaveten&e o restartovan&u 5%lipse +35;a

    Sada 'e .eo*od.o *ode/ dodaak (a A.drod SDK% Tre!a (a!ra o*-'90indow (1 Pre+erences, a (a0 o*-'9Android% U *o+'eDK ocationre!a 9.e*9a.'9 do ./a+ra.og Android DK% Podra(90e)a.a )red.o/ 'e C23Progra-$iles3Android3android(sdk(windows7S+ka " %"=;%

    =2

  • 8/10/2019 Android Skripta 1-10

    37/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika "."0 K Jodeavan&e dodatka )a 5%lipse +35

    O)0e 'e (a)re. *ro-e/ *odea)a.'a A.drod ra()o'.og okr9&e.'a /ada 'e0og9e krera a*+ka-'e (a A.drod *+a1or09^

    ".1.Freiran&e nove Android aplika%i&e

    Krera.'e .o)e A.drod a*+ka-'e kore.'e0 E-+*/e ra()o'.og okr9&e.'a do/a

    'e 'ed.o/a).o% Nako. /aro)a.'a okr9&e.'a, *ore!.o 'e (a!ra o*-'9 "ew (1,ther (1 Android (1 Android Pro4ect7!e+oS+ka " %"?;, a (a0 k+k.9 .a a/er"ext%

    Slika "."4K Freiran&e novo' Android pro&ekta

    =3

  • 8/10/2019 Android Skripta 1-10

    38/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    U /+edee0 korak9, *o'a)e /e .o) ekra. gde *rogra0er 0o&e da 9.e/eodgo)ara'9e *ara0ere )e(a.e (a A.drod *ro'eka 7S+ka " %"6;%

    Na)ede. *ara0er /9

    Jro&e%t 6ame Pro()o+'a. .a() .o)og E-+*/e *ro'eka% ontents Sadr&a' *ro'eka% Po/o' r ra(+e o*-'e *ara0era Co.e./o Create new pro4ect in workspace krera.'e *o*9.o .o)og *ro'eka%o Create pro4ect +ro- existing source 9)o( *o/o'eeg koda 9

    .o)okrera. *ro'eka%o Create pro4ect +ro- existing sa-ple kore.'e goo) *r0era 9

    ok)r9 .o)og *ro'eka% Cuild Tar'et I(!or )er('e A.drod APIa ko'a e /e kor/ 9 .o)o0

    *ro'ek9% Jroperties Doda. *ara0er .o)og A.drod *ro'eka% To /9

    o Application "a-e Na() a*+ka-'e ko' e ! )d+') .a 9rea'9%

    o Package "a-e Na() Ja)a *akea 9 ok)r9 koga e /e */a k+a/e*ro'eka%

    o Create Activity Uko+ko 'e o*-'a (a!ra.a, krerae /e .o)a *ra(.aak).o/ 9 ok)r9 *ro'eka% U o0 /+9a'9, .eo*od.o 'e 9.e .a() e ak).o/% Ve o ak).o/0a 0o&ee *roa 9 *og+a)+'9=%

    o 5in DK !ersion 0.0a+.a )er('a A.drod APIa .a ko'o' e rada*+ka-'a%

    Dak+e, *ore!.o 'e *ode/ *ara0ere kao .a /+-% Za *oeak, .ee0o kreraA.drod ak).o/% O o0e e )e re ! 9 *og+a)+'9 =%"%

    =5

  • 8/10/2019 Android Skripta 1-10

    39/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika "."- K Jarametri novo' Android pro&ekta

    Nako. 9/*e.o *odee. *ara0eara, *ore!.o 'e k+k.9 .a a/er $inish%O)0e 'e krera. .o) A.drod *ro'eka% Krera.'e0 .o)og A.drod *ro'eka,ge.er9 /e odree. 1a'+o) ko' /9 orga.(o)a. *o 1o+der0a% S)ak A.drod*ro'eka 0a /)o' ML 0a.1e/ 1a'+ 7AndroidManifest.xml; ko' o*/9'e *rrod9a*+ka-'e /)ake .'e.e ko0*o.e.e% O o)o0 1a'+9 !e )e re 9 .ared.o0*og+a)+'9%

    =

  • 8/10/2019 Android Skripta 1-10

    40/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    U /+edeo' a!e+ *rka(a.a 'e orga.(a-'a /r9k9re A.drod *ro'eka *o1o+der0a

    8older Opis

    src/Sadr& 1a'+o)e /a ()or.0 kodo0% U o)o0 1o+der9 /e .a+a(e /)e krera.e ak).o/ 79 ok)r9odgo)ara'9eg *akea;%

    bin/ O)de /e .a+a(e ko0*a'+o)a. 1a'+o) *ro'eka, kao o /9 ko.a. apk 1a'+o) 7)ar'a.a 4ar 1a'+a (a./a+a-'9 .a A.drod 9rea'9;%

    jni/Sadr& ()or. kod ra()'e. kore.'e0 a+aa A.drod NDK 7Na)e De)e+o*0e. K;% Uko+ko /e .ekor/ NDK, o)a' 1o+der .e *o/o'%

    gen/ Sadr& ge.er/a.e 1a'+o)e, ' /adr&a' .e re!a r9.o 0e.'a%

    assets/O)de /e .a+a(e doda. 0aer'a+ ko' /e kor/e 9 *ro'ek9% Na *r0er, o 0og9 da !9d9 *oda- ko'ekor/ a*+ka-'a% Na *oek9 'e o)a' 1o+der *ra(a.%

    res/U o)o0 1o+der9 /e .a+a(e doda. re/9r/ ko' /e kor/e 9 a*+ka-'% O. /9 orga.(o)a. *o*od1o+der0a% To 0og9 da !9d9 /+ke, a.0a-'e, ra/*ored e+e0e.aa kor/.kog .er1e'/a /+%

    libs/ O)de /e 9)a'9 doda.e !!+oeke ko'e /e kor/e 9 *ro'ek9%

    Tabela ".1 K Or'ani)a%i&a strukture Android pro&ekta

    U kore.o0 1o+der9 *ro'eka, o/0 1a'+a AndroidManifest.xml .a+a( /e 1a'+default.properties, ko' /adr& o*a *odea)a.'a *ro'eka, kao o 'e )er('a

    A.drod APIa ko'9 a*+ka-'a kor/%

    ".".8a&l [email protected]

    S)aka a*+ka-'a 0ora da *o/ed9'e /)o' AndroidManifest.xml 1a'+ 9 kore.o01o+der9 *ro'eka% Na() 0a.1e/ 1a'+a 0ora da !9de AndroidManifest.xml%Ma.1e/ /adr& .eo*od.e .1or0a-'e o a*+ka-' o A.drod //e09% O)e.1or0a-'e //e0 0ora da *o/ed9'e *re *oeka ()ra)a.'a a*+ka-'e% Neke od19.k-'a 0a.1e/ 1a'+a /9

    Sadr& .a() Ja)a *akea 9 ok)r9 ko'eg 'e .a*/a. ()or. kod a*+ka-'e%Na() *akea *red/a)+'a 'ed./)e. de.kaor a*+ka-'e%

    O*/9'e ko0*o.e.e a*+ka-'e ak).o/, /er)/e, *r0ao-e *or9ka *ro)a'dere /adr&a'a% Dak+e, 0a.1e/ 1a'+ /adr& .a()e k+a/a 9 ko'0a /9o*/a.e ko0*o.e.e a*+ka-'e% Na *r0er, a*+ka-'a /e .ee /aro)a9ko+ko 9 0a.1e/ 1a'+9 .'e .a)ede.a .'e.a *oe.a ak).o/, ak . 9/+9a'9 da 1a'+ /a Ja)a ()or.0 kodo0 e ak).o/ *o/o'%

    Odre9'e ko' *ro-e/ e ! do0a. ko0*o.e.a0a a*+ka-'e% De.e ko'e *r)+eg'e 7per-issions; a*+ka-'a 0ora da *o/ed9'e da !

    0og+a .e/0ea.o da 19.k-o.e% Takoe de.e ko'e *r)+eg'e 0ora'9 dr9ge a*+ka-'e da *o/ed9'9 da !

    0og+e da kor/e ko0*o.e.e a*+ka-'e% De.e 0.0a+.9 )er('9 A.drod APIa ko' (ae)a a*+ka-'a% De.e +/9 !!+oeka ko'e a*+ka-'a kor/

    I(9(e.o 'e !.o *ra)+.o ko.g9r/a 0a.1e/ 1a'+, (ao o 9 *ro).o0a*+ka-'a .ee do!ro 19.k-o./a% U *r0er9 "%$ *rka(a. 'e (g+ed 'ed.og0a.1e/ 1a'+a%

    ?#

  • 8/10/2019 Android Skripta 1-10

    41/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

  • 8/10/2019 Android Skripta 1-10

    42/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

  • 8/10/2019 Android Skripta 1-10

    43/153

  • 8/10/2019 Android Skripta 1-10

    44/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    *r odree.0 oko+.o/0a% O)0 /ek9.dar.0 9+a(.0 aka0a /e 9*ra)+'a*o0o9 A.drod 0a.1e/ 1a'+a odree.0 +er0a%

    A*+ka-'e 0og9 ! *rek.9e (!og ra(. dogaa'a )eg *rorea, kao o 'ee+e1o./k *o()% U 'ed.o0 re.9k9 0o&e *o/o'a /a0o 'ed.a ak).a a*+ka-'a%

    A.drod a*+ka-'e /9 odgo)or.e (a 9*ra)+'a.'e .'o)0 /a.'e0, kao .'o)o00e0or'o0, re/9r/0a *oda-0a% A.drod o*era). //e0 0o&e /k+'9ak).o/ ko'a 'e .a *a9(, /o*ra.a + 9.e.a kada 'e 0e0or'a /+a!a% O)o(.a da /)aka ak).o/ ko'a .'e 9 *r)o0 *+a.9 0ora ! /k+'9e.a% Dr9g0re0a, A.drod a*+ka-'a 0ora odr&a)a /a.'e ! /*re0.a da !9de *rek.9a+ ak /k+'9e.a 9 /)ako0 re.9k9%

    0.1.Mivotni %iklus aktivnosti

    )o.0 -k+9/o0 ak).o/ 'ed.e A.drod a*+ka-'e 9*ra)+'a /e

    0*+e0e.a-'o0 odgo)ara'9 0eoda% S)aka ak).o/ 0a r o/.o).a /a.'a

    )esu-ed 6)unning7o Ak).o/ 'e *okre.9a 1ok9/ra.a%

    Pausedo Dr9ga ak).o/ 'e *okre.9a 1ok9/ra.a 79 *r)o0 *+a.9;, a+ 'e

    ek9a ak).o/ da+'e *okre.9a )d+')a% Na *r0er, dr9gaak).o/ 'e 9 *r)o0 *+a.9, dok 'e ek9a ak).o/ )d+')a, a+ .e(a9(0a -eo ekra.% Ak).o/ 'e 'e /a.'epaused'e *o*9.o &)a>7o!'eka k+a/e A-)@ /e .a+a( 9 0e0or', (adr&a)a /)a /a.'a

    o/a'e 9 .do 0a.ager9;, 0e90 o)a ak).o/ 0o&e da !9de9!'e.a> 9 /+9a'9 ./ke /+o!od.e 0e0or'e% topped

    o Ak).o/ 'e 'e /a.'e stopped'e da+'e &)a>, a+ rad 9 *o(ad.%O!'eka k+a/e A-)@ da+'e /e .a+a( 9 0e0or', 9)a /)a /a.'a,a+ /e )e .e .a+a( 9 ok)r9 .do 0a.agera% O)9 ak).o/ )e.e )d kor/.k 9 /+9a'9 *ore!e (a 0e0or'o0 //e0 0o&e da 'e9!'e>%

    )o. -k+9/ 'ed.e ak).o/ *rka(a. 'e .a /+- ?%$% Dak+e, kao o 'e.a*o0e.9o .a *oek9 o)og *og+a)+'a, 1a(a0a &)o.og -k+9/a ak).o/

    9*ra)+'a'9 0eode on-reate45, on(estart45, ontart45,on(esume45, on6ause45,ontop45 on+estro$45%

    )o. -k+9/ ak).o/ (a*o.'e 0eodo0 on-reate45, a (a)ra)a /e (a'ed.o /a0eodo0 on+estro$45% U ok)r9 0eode on-reate45, *rogra0er ! re!a+o dade.e (g+ed g+o!a+.o /a.'e ak).o/, kao o 'e ra/*ored e+e0e.aakor/.kog .er1e'/a% I0*+e0e.a-'o0 0eode on+estro$45re!a+o ! o/+o!odkore.e re/9r/e% Na *r0er, 9ko+ko )aa ak).o/ kor/ *o(ad./k9 . ko'a*re9(0a *odake /a I.er.ea, . ! re!a+o krera 9 ok)r9 0eode on-reate45,a (a9/a) 'e 9 ok)r9 0eode on+estro$45%

    ??

  • 8/10/2019 Android Skripta 1-10

    45/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Ak).o/ 'e )d+')a 7visible; (0e9 *o()a 0eoda ontart45 ontop45% Dok 'eak).o/ )d+')a, kor/.k 'e )d .a ekra.9 0o&e da )r .erak-'9 /a .'o07.*r% da 9.o/ *odake;% Meoda ontop45 /e *o()a kada /e /ar9'e .o)aak).o/, a ek9a ak).o/ )e .'e )d+')a%

    Ak).o/ 'e 1ok9/ra.a 79 *r)o0 *+a.9; (0e9 *o()a 0eoda on(esume45 on6ause45% Tada /e a ak).o/ .a+a( /*red /) o/a+ ak).o/% Ak).o/0o&e e/o da *re+a( ( *r)og *+a.a 9 *o(ad.9 o!r.9o% Na *r0er, 0eodaon6ause45/e *o()a kada 9rea' *ree 9 /a.'e 0ro)a.'a 7sleep;%

    Slika 0." K Mivotni %iklus aktivnosti

    U a!e+ ?%$ *rka(a.e /9 19.da0e.a+.e 0eode (a 9*ra)+'a.'e &)o.og -k+9/a .'o) o*/%

    ?6

  • 8/10/2019 Android Skripta 1-10

    46/153

  • 8/10/2019 Android Skripta 1-10

    47/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    9verride

    protected void on(esume45 8

    super.on(esume45;

    // A#tivnost je postala vidljiva 4sada je u stanju "resumed"5.

    9verride

    protected void on6ause45 8

    super.on6ause45;

    // +ruga a#tivnost u>ima fo#us 4ova a#tivnost je sada "paused"5.

    9verride

    protected void ontop45 8

    super.ontop45;

    // A#tivnost vie nije vidljiva 4sada je u stanju "stopped"5.

    9verride

    protected void on+estro$45 8

    super.on+estro$45; // A#tivnost se unitava.

    Jrimer 0." K Jrimer aktivnosti sa metodama ivotno' %iklusa

    0.".Freiran&e aktivnosti

    Da ! /e krera+a .o)a ak).o/ 9 ok)r9 A.drod a*+ka-'e, krera /e .o)a k+a/ako'a .a/+e9'e k+a/9 A-)@ 7+ .'e.9 ()ede.9 k+a/9;% U .o)okrera.o' k+a/,.eo*od.o 'e 0*+e0e.ra 0eode o*/a.e 9 *reod.o0 *og+a)+'9 7vidiPri-er

  • 8/10/2019 Android Skripta 1-10

    48/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika 0.": K +)bor op%i&e )a dodavan&e novo' fa&la

    Poo0 'e *ore!.o (a!ra o*-'9 (a doda)a.'e .o)e k+a/e% To 'e o*-'a Ja)a YC+a// 7S+ka =%"5;% Za0 re!a k+k.9 .a a/er Ne%

    Slika 0."= K +)bor op%i&e )a kreiran&e nove klase

    Sada e /e *o'a) ekra. *rka(a. .a /+- ?%6% O)de 'e .eo*od.o 9.eodgo)ara'9a *odea)a.'a, a o /9

    Sour%e folder 1o+der 9 ko0e /e 9)a'9 ()or. 1a'+o) *ro'eka% O!.o 'eo src%

    Ja%ka'e .a() *akea 9 ko0e /e krera k+a/a% O)de ! re!a+o da /o'.a() *akea ko' 'e krera. (a'ed.o /a .o)0 A.drod *ro'eko0% U o)o0/+9a'9, o 'e net.-yelab.android.-o4aaplikaci4a%

    6ame .a() k+a/e% O)de 9.o/0o &e+'e. .a() ak).o/ ko'9 krera0o%U .ae0 /+9a'9, .eka a' .a() !9deAktivnost%

    @odi*ers 0odkaor *r/9*a% Za ak).o/, o)a )red.o/ ! re!a+o da

    !9depublic%

    ?5

  • 8/10/2019 Android Skripta 1-10

    49/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Super%lass .adree.a k+a/a% Za ak).o/, o ! re!a+o da !9deandroid.app.Activity%

    Slika 0."> K Jodeavan&a nove klase

    Nako. 9.e )red.o/, *ore!.o 'e k+k.9 .a a/er $inish% Sada 'e *ore!.o0*+e0e.ra .eke od ra.'e *o0e.9 0eode% Ak).o/ ko'9 /0o krera+*red/a)+'ae &ello 0orld *r0er%

    Na'*re e0o 0*+e0e.ra 0eod9 on-reate45

    9verride

    public void on-reate4:undle saved%nstancetate5 8

    super.on-reate4saved%nstancetate5;

    *extie@ tv = ne@ *extie@4t7is5;

    tv.set*ext4"ello @orld"5;

    set-ontentie@4tv5;

    Jrimer 0.0 K +mplementa%i&a metode onreate($

    Jed. 9+a(. *ara0ear o)e 0eode 'e o!'eka *a :undleko' *red/a)+'a .eko*reod.o /a.'e ak).o/ 9ko+ko 'e ak).o/ !+a ra.'e *okre.9a% Na *oek9/e *o()a 0eoda on-reate45 .adree.e k+a/e 7k+a/a Activit$;, ko'o' /e*ro/+e9'e *ara0ear *a :undle% Za0 /e krera .o) *og+ed 7ie@;% Pog+ed 9/)ar *red/a)+'a o/.o).9 'ed.-9 kor/.kog .er1e'/a A.drod a*+ka-'e%A.drod ak).o/ 0o&e da kor/ )e ra(+ *og+eda, a o .'0a e ! re 9.ared.o0 *og+a)+'9% Tek/9a+. /adr&a' /e 9!a-9'e kore.'e0 0eodeset*ext45%

    Ko.aa. (g+ed k+a/e A#tivnost*rka(a. 'e 9 .ared.o0 *r0er9

    ?

  • 8/10/2019 Android Skripta 1-10

    50/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    pac#age net.m$elab.android.mojaapli#acija;

    import android.app.Activit$;

    import android.os.:undle;

    import android.@idget.*extie@;

    public class A#tivnost extends Activit$ 8

    9verride

    public void on-reate4:undle saved%nstancetate5 8

    super.on-reate4saved%nstancetate5;

    *extie@ tv = ne@ *extie@4t7is5;

    tv.set*ext4"ello @orld"5;

    set-ontentie@4tv5;

    Jrimer 0.4 K Flasa Aktivnost

    Da ! a*+ka-'a !+a 19.k-o.a+.a, .eo*od.o 'e 9!a- *odake o krera.o'ak).o/ 9 A.drod 0a.1e/ 1a'+% Nako. (0e.a, 1a'+ AndroidManifest.xml re!ada (g+eda o)ako

  • 8/10/2019 Android Skripta 1-10

    51/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Saro)a.'e )r9e+.og 9rea'a *red/a)+'a d9g *ro-e/ ko' 0o&e *ora'a )e od6 0.9a%

    Pro-e/ krera.'a A.drod )r9e+.og 9rea'a o*/a. 'e 9 *og+a)+'9 $%?% Uko+ko 'e.a*ra)+'e.o )e A.drod )r9e+. 9rea'a, &e+'e. 9rea' 'e 0og9e (a!ra

    *o0o9 o*-'e Run (1 )un Con>gurations, a (a0 'e *ore!.o (a!ra o*-'9Android Application (1 "a#iv Pro4ekta, *a kar-9 /arget7S+ka =%=#;%

    Slika 0.0# K +)bor Android virtuelno' ureLa&a

    Uko+ko 'e (k A.drod 9rea' *o)e(a. /a ra9.aro0 kore.'e0 USB *ora,(!oro0 o*-'e )un .ee do do /aro)a.'a )r9e+.og 9rea'a, )e e /ea*+ka-'a ./a+ra .a (k 9rea' *oo0 a9o0a/k /aro)a .a .'e09%

    U/*e.o /aro)a.a a*+ka-'a .a )r9e+.o0 9rea'9 *rka(a.a 'e .a /+edeo'/+-

    6$

  • 8/10/2019 Android Skripta 1-10

    52/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Slika 0.01 K Aplika%i&a na virtuelnom ureLa&u

    6"

  • 8/10/2019 Android Skripta 1-10

    53/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    4. Desursi u Android aplika%i&ama

    S)e a.drod a*+ka-'e /a/o'e /e ( d)a /eg0e.a

    19.k-o.a+.o/ *red/a)+'a kod kako /e a*+ka-'a *o.aa .a .ek(ae)% O)de /*ada'9 /) a+gor0 ko' *okre9 a*+ka-'9

    re/9r/ + *oda- o!9)aa'9 ek/o)e, /+ke, a9do )deo 1a'+o)e,daoeke, ko.e dr9ge *odake ko'e kor/ a*+ka-'a%

    Re/9r/ o!9)aa'9 ek/ 9 o!+k9 /r.ga, /+ke ko.e, a9do daoeke,)deo (a*/e dr9ge *odake ko'e kor/ a*+ka-'a%

    Re/9r/ /e de+e .a d)a *a re/9r/e a*+ka-'e re/9r/e //e0a% Re/9r/ea*+ka-'e de.e de)e+o*er 9.9ar 1a'+o)a A.drod *ro'eka a.o /9odree. (a .ek9 a*+ka-'9% Re/9r/ //e0a /9 /a.dard. re/9r/ ko'ede.e A.drod *+a1or0a do/9*. /9 /)0 a*+ka-'a0a kro( A.drodSDK%

    Re/9r/ a*+ka-'e /e *ra)e 9)a'9 9.9ar A.drod *ro'eka 9 4re/drekor'909% Kor/e )e de./a.9 a+ ek/!+.9 /r9k9r9drekor'90a, re/9r/ /9 orga.(o)a., de./a. 9*ako)a. /a *akeo0a*+ka-'e% Re/9r/ a*+ka-'e /e .e de+e /a o/ako0 A.rod //e0a%

    S) re/9r/ a*+ka-'e /e 9)a'9 9 /r9k9r drekor'90a 4re/ /a/a)+'e. /99 *ro'eka 9 re.9k9 *ra)+'e.'a a*+ka-'e% Re/9r/ a*+ka-'e /e 0og9kor/ *rogra0er/k% Takoe .a .' /e 0og9 od.o/ re/9r/ dr9gre/9r/a a*+ka-'a%

    S)ak *9 kad /e /a9)a 1a'+ /a re/9r/0a 9 E-+*/9, R%'a)a k+a/a 1a'+ /e*o.o)o /a/a)+'a kako ! /e 9!a-+e .o)e (0e.e% Ako .'e kore. *ra)

    drekor'90 + *ra)+a o .a()9 1a'+a, *o'a)e /e greka 9 ko0*a'+er9 9*ro(or9 E-+*/e Pro!+e0/%

    Re/9r/0a a*+ka-'e /e 0o&e *r/9* *rogra0er/k kor/e ge.er/9k+a/9 ko'a /e (o)e R%'a)a% Kako ! /e doda+a re1ere.-a .a re/9r/, 0ora /edo do o!'eka re/9r/a a*+ka-'e kor/e k+a/9 geRe/o9r-e/7; ako.a*ra) odgo)ara'9 *o() .a ko0a.d9, ko' 'e (a/.o)a. .a *9 re/9r/ako' &e+ da /e doda%

    De)e+o*er 0og9 da *r/9*e re/9r/0a A.drod //e0a 7kao dodaak

    re/9r/0a a*+ka-'e;% Mog9 /e de+ 0.og re/9r/ //e0a kro( )ea*+ka-'a (!og o!.og (g+eda o/ea'a%Na *r0er, k+a/a re/9r/a A.drod

    6=

  • 8/10/2019 Android Skripta 1-10

    54/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    //e0a 7a.drod%R%/r.g; /adr& /r.go)e (a re kao o /9 OK, Ca.-e+,e/, No, C9, Co*@ Pa/e%

    S/e0/k re/9r/ /e 9)a'9 9 a.drod *ake9% Po/o'e k+a/e (a /)ak od)e *o)a re/9r/a% Na *r0er, k+a/a a.drod%R%/r.g /adr& /r.g//e0/kog re/9r/a% Kako ! /e do!o /r.g //e0/kog re/9r/a (a OK *r)o/e 0ora kor/ /aka ko0a.da k+a/e Re/9r/a geS@/e07; kako ! /edo)eo g+o!a+. //e0/k o!'eka Re/o9r-e% O.da /e *o()a ko0a.dageSr.g7; /a odgo)ara'90 /r.g 0e.o0 re/9r/a%

    4.1.pravl&an&e i pristup resursima

    U o)o0 *og+a)+'9 !e *rka(a.o kako A.drod a*+ka-'e /k+ade *r/9*a'9 )a&.0 re/9r/0a kao o /9 /r.go), graka o/a+ *oda-%

    Takoe e ! *rka(a.o kako da orga.(9'ee A.drod re/9r/e 9 ok)r9*ro'eka kako ! /e .a .a'+ak .a. 0og+a ()r +oka+(a-'a *r+agoa)a.'e a*+ka-'a (a ra(+e ko.g9ra-o.e 9rea'e% Kako ! /eo0og9+a ko0*aa!+.o/ /a ra(+0 9rea'0a *ore!.o 'e re/9r/eorga.(o)a 9 1o+der0a7drekor'900a; *od1o+der0a kako ! /e /)akdeo a.drod a*+ka-'e 0ogao odr&a)a .e(a)/.o od o/a+ de+o)aa*+ka-'e%

    Podra(90e)a. /+ *rka()a.'a a*+ka-'e 9)a /e .a *9a.' res/layout/0e90 0o&ee *ode/ 9 ko.g9ra-o.o0 1a'+9 da kada /e a*+ka-'a

    *okre.e .a .ek 9rea' ko' 0a dr9ga'9 re(o+9-'9 ekra.a, .*r kor/La.d/-a*e or'e.a-'9, da ada *o()a 19.k-'e (a *rka( / 1o+derares/layout-land/ gde e .a o)a' .a. /a0a a*+ka-'a (a)/.o odre(o+9-'e 9rea'a *rka(a adek)aa. /adr&a'%

    S+ka =%$% Ra(+ *rka( (a ra+9 re(o+9-'9 9rea'a

    Kore.'e re/9r/a kor/e E-+*/e ra()o'.o okr9&e.'e /a dodako0A.drod A//e Pa-kag.g Too+ 'e )eo0a 'ed.o/a).o, .'e *ore!.oko0*a'+ra re/9r/e, o e E-+*/e /a0 9rad, 0e90 ako kor/e .ekodr9go ra()o'.o ok9&e.'e *ore!.o 'e /)e re/9r/e ko0*+a'+ra ( ko0a.d.e+.'e + *ak 0o&ee .a*/a /kr*9 ko'a e o 9rad, *oo0 9 /kr*9

    0o&ee kor/ (a /)e )ae a*+ka-'e%

    6?

  • 8/10/2019 Android Skripta 1-10

    55/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    De./a.'e *odaaka a*+ka-'e kao re/9r/a 'e do!ra )e&!a *rogra0ra.'a%Gr9*/a.'e re/9r/a a*+ka-'e .'o)o /*a'a.'e 9 *ake a*+ka-'e 0a/+edee kor/

    - Kod 'e 'a/.' +ak (a a.'e, o do)od do 0a.'e greaka%- Re/9r/ /9 orga.(o)a. *o *o)0a /g9r.o /9 'ed./)e.- Re/9r/ /9 do!ro /0ee. (a *r+agoa)a.'e e+e1o.0a

    66

  • 8/10/2019 Android Skripta 1-10

    56/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    4.".Tipovi resursa

    A.drod a*+ka-'e kor/e )e+k !ro' ra(+ *o)a re/9r/a kao o 'eek/, graka, e0e 9 !o' (a d(a'. kor/.kog .er1e'/a d% O) re/9r/ /e

    .a+a(e 9 re/4 drekor'909 )ae a.drod a*+ka-'e%

    Fa'+o) re/9r/a /a9)a. 9 4re/ drekor'909 0ora'9 da *o9'9 /+edea*ra)+a

    - I0e.a 1a'+o)a re/9r/a 0ora'9 ! .a*/a. 0a+0 /+o)0a- I0e.a 1a'+o)a re/9r/a 0og9 /adr&a /a0o /+o)a, !ro'e)e, do.'9 -r9,

    ake- I0e.a 1a'+o)a re/9r/a 7 ML ar!9 0e.a; 0ora'9 ! 'ed./)e.%

    U .ared.o' a!e+ *rka(a.o 'e kako /e 9)a'9 re/9r/ ko'e *odr&a)aA.dord SDK%

    T* re/9r/a Pore!a.drekor'90

    Na() ML ag

    Strin's 4re/4)a+9e/4 /r.g/%0+ X/r.gY6i) strin'ova 4re/4)a+9e/4 /r.g/%0+ X/r.garra@Y,

    Xe0YCoolenas 4re/4)a+9e/4 !oo+/%0+ X!oo+Yolors 4re/4)a+9e/4 Co+or/%0+ X-o+orY3imensions 4re/4)a+9e/4 D0e./%0+ Xd0e.Y+nte'ers 4re/4)a+9e/4 .eger/%0+ X.egerY@eovit ni) 4re/4)a+9e/4 Arra@/%0+ Xarra@Y,

    Xe0Y!ednostavnielementi(3raBables$

    4re/4)a+9e/4 draa!+e/%0+ Xdraa!+eY

    Graphi%s(slike$

    4re/4draa!+e4 I-o.%*.g,+ogo,'*g d

    @eni 4re/40e.94 Pr0er0a.0e.9%0+

    e+*0e.9%0+

    X0e.9Y

    @E fa&lovi 4re/40+4+)'led(Ea9outs$

    4re/4+a@o94 0a.%0+

    Stilovi i teme 4re/4)a+9e/4 /@+e/%0+e0e/%0+

    X/@+eY

    Anima%i&a 4re/4draa!+e4 Pr0er%/ek)e.-a$%0+/ek)e.-a"%0+

    Xa.0ao.+/Y, Xe0Y

    Ta!e+a =%$% Kako orga.(o)a re/9r/e 9 A.drod *ro'ek9

    62

  • 8/10/2019 Android Skripta 1-10

    57/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    4.0.Dad sa resursima

    U o)o0 de+9 !e *rka(a.o kako 0o&ee 9*ra)+'a re/9r/0a 9 )ao'A.dord a*+ka-', ko' 1or0a /9 *odr&a. 9 ko0 1or0a9 /e 9)a'9% Neke

    )r/e re/9r/a kao o /9 ek/, !o'a d% /9 )eo0a do!ro *odr&a.e od/ra.e E-+*/e edora A.dord P+9g. Re/o9r-e Edor, dok dr9g kao o/9 a.0ra.e /ek)e.-e, ./9 /a .'0a 'e +ake rad drek.o edo)a.'e09 ML daoeka0a%

    4.0.1.Dad sa strin'ovima

    Sr.g re/9r/ /9 .a''ed.o/a).' * re/9r/a /a ko'0a 0o&e da radDe)e+o*er% Sr.go)e 0o&ee *ro0e. + doda edo)a.'e0 0+ daoeke

    /r.g/%0+% Sr.g /e -9)a 9 ok)r9 aga X/r.gY% U *r+og9 /+ed *r0erkako (g+eda /r.g/%0+

    X0+ )er/o._:$%#: e.-od.g_:915:YXre/o9r-e/YX/r.g .a0e_:.a()`a*+ka-'e:YMo'a *r)a a*+ka-'aX4/r.gYX/r.g .a0e_:e/`/r.g:YTe/ $,",=X4/r.gYX/r.g .a0e_:e/`/r.g":YTe/ ?,6,2X4/r.gYX/r.g.a0e_:1or0ara.`e:YX!YBo+dX4!Y,XYIa+-X4Y,X9YL.eX49YX4/r.gY

    X4re/o9r-e/Y

    U .ared.o' +.' koda *rka(a.o 'e kako 0o&ee odree.o0 /r.g9 9 01a'+9 *r/9* kor/ 9 a*+ka-'Sr.g .a()A*+ka-'e _ geRe/o9r-e/7;%geSr.g7R%/r.g%.a()`a*+ka-'e;

    4.0.".Dad sa ni)om strin'ova

    A.drod *odr&a)a rad /a .(o0 /r.go)a% O)o 'e )eo0a *ogod.o kada&e+e da 9 .eko' *ada'9o' +/ *rka&ee )e o*-'a% N( /r.go)a /e 9

    ML 1a'+9 de.e .a *9a.' re(4)a+9e/4 ko0*a'+ra /e 9 re.9k9()ra)a.'a a*+ka-'e% N( /r.go)a 9 ML9 /e 9)a 9 ok)r9 ago)aX/r.garra@Y ago0 (a *red/a)+'a.'e e+e0e.aa .(a Xe0Y% U.a/a)k9 0o&ee )de kako /e 9 0+ 1a'+9 .a *9a.'re(4)a+9e/4arra@/%0+ 9)a .( /r.go)a

    X0+ )er/o._:$%#: e.-od.g_:915:YXre/o9r-e/YX/r.garra@ .a0e_:*red0e:Y Xe0YE+ekro./ko *o/+o)a.'eX4e0Y Xe0YI.er.e e.o+og'eX4e0Y Xe0YMo!+.o *o/+o)a.'eX4e0YX4/r.garra@Y

    63

  • 8/10/2019 Android Skripta 1-10

    58/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    X/r.garra@ .a0e_:Preda)a-:Y Xe0YMar'a.a Zrak- De/*oo)-X4e0Y Xe0YBo(dar Rade.ko)-X4e0YX4/r.garra@YX4re/o9r-e/Y

    Pr/9* re/9r/0a 'e )eo0a 'ed.o/a).o, 9 ko.kre.o0 *r0er9 *r/9*re/9r/9 *red0e rad0o .a /+ede .a.

    Sr.gb *red0e _ geRe/o9r-e/7;%geSr.gArra@7R%arra@%*red0e;

    4.0.0.Dad sa Coolean i +nte'er resursima

    Boo+ea. )red.o/ /e 9)a'9 .a *9a.' re(4)a+9e/4!oo+/%0+% O)ako (g+eda*r0er 9)a.'a Boo+ )red.o/

    X0+ )er/o._:$%#: e.-od.g_:915:YXre/o9r-e/YX!oo+ .a0e_:*odr(a.Sr*/kJe(k:Yr9eX4!oo+YX!oo+ .a0e_:*odr(a.I(!orJe(ka:Y1a+/eX4!oo+YX4re/o9r-e/Y

    Kada /e &e+ re/9r/9 *r/9* ( A.drod a*+ka-'e o /e rad .a /+ede.a.

    !oo+ea. *odr(a.I(!orJe(ka _geRe/o9r-e/7;%geBoo+ea.7R%!oo+%*odr(a.I(!orJe(ka;

    Na /+a. .a. /e rad /a I.eger re/9r/0a, 'ed.a ra(+ka 'e/e ago)ko' /e kor/e *9a.'a .a ko'o' /e 9)a'9 .eger re/9r/re(4)a+9e/4.90/%0+%

    X0+ )er/o._:$%#: e.-od.g_:915:YXre/o9r-e/YX.eger .a0e_:/a!rakA:Y"6X4.egerYX.eger .a0e_:/a!rakB:Y=X4.egerY

    X4re/o9r-e/Y

    Pr/9* .eger re/9r/0a ( A.drod a+ka-'e (g+eda o)ako

    . /a!rakA _ geRe/o9r-e/7;%geI.eger7R%.eger%/a!rakA;

    65

  • 8/10/2019 Android Skripta 1-10

    59/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    4.0.4.Dad sa bo&ama

    A.drod a*+ka-'a 9 /a.'9 'e da /k+ad )red.o/ RGB !o'e, oa9o0a/k o!e(!e9'e da /e e !o'e *r0e.e .a dr9ge e+e0e.e ekra.a%

    Vred.o/ ko'e /e 9)a'9, 0og9 /e /kor/ (a *odea)a.'e !o'e ek/a +*o(ad.e ekra.a a*+ak-'e% Vred.o/ (a !o'e 9)a'9 /e 9 ML 1a'+9 .a*9a.' re(4)a+9e/4-o+or/%0+%

    A.drod *odr&a)a'a rad /a /+ede0 1or0a0a !o'a

    cRGB 7*r0er, cF## , $"! !o'a red; cARGB 7*r0er, c5F## , $"! !o'a, -r)e.a /a ra./*are.o/ do

    6#; cRRGGBB 7*r0er, cFF##FF, "?! !o'a, *9r*9r-r)e.a;

    cAARRGGBB 7*r0er, c5#FF##FF , "?! !o'a, *9r*9r-r)e.a /ara./*are.o/ do 6#;

    Pr0er /k+ade.'a !o'a

    X0+ )er/o._:$%#: e.-od.g_:915:YXre/o9r-e/YX-o+or .a0e_:!a-kgro9.d`-o+or:Yc##2?##X4-o+orYX-o+or .a0e_:e`-o+or:YcFFE?C?X4-o+orYX4re/o9r-e/Y

    S+edea +.'a koda )raa )red.o/ odree.e !o'e

    . 0o'aBo'a _ geRe/o9r-e/7;%geCo+or7R%-o+or%0o'aBo'a;

    4.0.-.Dad sa resursima ko&i se %rta&u

    Re/9r/ ko' /e -ra'9, kao o /9 /+ke, 0ora'9 /e /a9)a 9 4re/4draa!+edrekor'909 *ro'eka% O) *o) re/9r/a /e o.da /a/a)+'a'9 9 *akea*+ka-'e do/9*.e /9 a*+ka-'%Na'e re/9r/ ko' /e -ra'9 /9 !0a* /+ke, kao o /9 PNG JPG 1a'+o)%

    O) 1a'+o) /e e/o kor/e kao ko.-e a*+ka-'e /+ke d9g0a a+ /e0og9 kor/ (a )e+k !ro' ko0*o.e. kor/.kog .er1e'/a%

    Re/9r/ /+ka /9 9 k+a/ B0a*Draa!+e% Kako ! /e *r/9*+o grako0re/9r/9 ko' /e (o)e 4re/4draa!+e4+ogo%*.g, re!a /e kor/ ko0a.dageDraa!+e7;, *o /+edee0 redo/+ed9

    B0a*Draa!+e +ogoB0a* _7B0a*Draa!+e;geRe/o9r-e/7;%geDraa!+e7R%draa!+e%+ogo;

    Ve.9 )re0e.a, 0e90, graka .e 0ora da /e o)ara drek.o% U0e/ooga, 0o&e /e kor/ de.kaor re/9r/a kao ar!9 (a ko.ro+9 kao o

    'e ko.ro+a I0ageVe%

    6

  • 8/10/2019 Android Skripta 1-10

    60/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    XI0ageVea.drodd_8Qd4LogoI0ageVe 8

    a.drod/r-_8draa!+e4+ogo8 a.drod+a@o9`d_8ra*`-o.e.8

    a.drod+a@o9`eg_8ra*`-o.e.8 4Y

    S+ede kod, .a *r0er, *o/a)+'a o)ara +ogo%*.g /+k9 9 ko.ro+I0ageVe ko'a /e (o)e LogoI0ageVe, ko'a 0ora ! de./a.a 9.9ar1a'+a (a +a@o9 70a.%0+;

    I0ageVe +ogoVe _ 7I0ageVe;.dVeB@Id7R%d%LogoI0ageVe;+ogoVe%/eI0ageRe/o9r-e7R%draa!+e%+ogo;

    Takoe /e 0o&e krera /*e-'a+. ML 1a'+ kako ! /e o*/a+e dr9ge

    Draa!+e *odk+a/e, kao o 'e Sa*eDraa!+e% Mo&e /e kor/ k+a/aSa*eDraa!+e da ! /e de./a+ ra(. o!+-, kao o 'e *ra)o9gao.k kr9g%

    4.0..Dad sa meni&ima

    Pr+ko0 ra()o'a a*+ka-'e, /a+.o /e 'a)+'a *ore!a (a krera.'e0 0e.'a19.k-o.a+.o/% A.drd *odr&a)a rad /a 0e.'0a, 0e. /e kao o/a+re/9r/ /k+ade 9 drekor'909 re(40e.94% S)ak re/9r/ 0e.'a, ko'

    *red/a)+'a /k9* *o'ed.a. /a)k 0e.'a, /e /k+ad* kao *o/e!.o1or0ara.a ML daoeka ko0*a'+ra'9 /e 9 )re0e ()ra)a.'a a*+ka-'e%U .a/a)k9 /+ed *rka( 'ed.o/a).og 0e.'a ko' 'e /k+ade. 9re(40e.94/*eed%0+ ko' *red/a)+'a 0e. 'ed.e *ro/e a*+ka-'e

    X0e.9 0+./a.drod_:*44/-e0a/%a.drod%-o04a*k4re/4a.drod:YXe0a.drodd_:Qd4/ar:a.drod+e_:Sar9' a*+ka-'9^:

    a.drodorderI.Caegor@_:$:YX4e0YXe0a.drodd_:Qd4/o*:a.drod+e_:So*ra' a*+ka-'9^:a.drodorderI.Caegor@_:?:YX4e0YXe0a.drodd_:Qd49!r(a':a.drod+e_:U!r(a' a*+ka-'9^:a.drodorderI.Caegor@_:":YX4e0YXe0a.drodd_:Qd49/*or:

    a.drod+e_:U/*or a*+ka-'9^:a.drodorderI.Caegor@_:=:YX4e0Y

    2#

  • 8/10/2019 Android Skripta 1-10

    61/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    X40e.9Y

    2$

  • 8/10/2019 Android Skripta 1-10

    62/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Me. /e 0o&e krera kore.'e0 E-+*/e dodaka ko' 0o&e *r/9*ako.g9ra-o.0 ar!90a (a /)ak9 /a)k9 0e.'a% U *redod.o0*r0er9 /0o drek.o 9 0+ 1a+ *o/a)+ .a() /a)ke 0e.'a, .ae /r.go) /e akoe 0og9 (d)o' ( og 1a'+a ka/.'e +oka+(o)a .a )e

    'e(ka% Pr0er 0e.'a gde /9 de./a. /a0o .a() re/9r/a, gde /e)red.o/ re/9r/a 9(0a ka/.'e ( ko.kre.og 0+ 1a'+a%

    X0e.9 0+./a.drod_>*44/-e0a/%a.drod%-o04a*k4re/4a.drod:YXe0a.drodd_:Qd4/ar:a.drod+e_:/r.g4/ar:a.drodorderI.Caegor@_:$:YX4e0YXe0a.drodd_:Qd4/o*:

    a.drod+e_:/r.g4/o*:a.drodorderI.Caegor@_:":YX4e0YX40e.9Y

    Da ! /e kor/o *redod.o .a*/a. 0e. *ore!.o 'e 9 a*+ka-' *o()are/9r/ ko' 'e /k+ade. .a *9a.' re(40e.94/*eed%0+ ako o /eo)era'd9'e 0eoda .adree.e k+a/e o.CreaeO*o./Me.97; 9 a.droda*+ka-'%

    *9!+- !oo+ea. o.CreaeO*o./Me.97Me.9 0e.9; geMe.9I.aer7;%.ae7R%0e.9%/*eed, 0e.9; re9r. r9ef

    O)0 'e 0e. krera. o 'e /)e% Sada, ako /e *okre.e a*+ka-'a *r/.ea/er 0e. do!e /e 0e. ko' 'e gore de./a.% Po/o' )e+k !ro' ar!9ako' /e 0o&e dode+ .eko' /a)k 0e.'a, /*/ak /) /a)k 0o&ee*og+eda 9 ()a..o' dok90e.a-' (a A.dord SDK*44d%a.drod%-o04g9de4o*-/4re/o9r-e/40e.9re/o9r-e%0+%

    2"

    http://d.android.com/guide/topics/resources/menu-resource.htmlhttp://d.android.com/guide/topics/resources/menu-resource.html
  • 8/10/2019 Android Skripta 1-10

    63/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    4.0.:.Dad sa fa&lovima

    Kao dodaak /r.g9, gra- +a@o9 re/9r/0a, A.drod *ro'ek 0og9

    /adr&a 1a'+o)e kao re/9r/e% O) 1a'+o) 0og9 ! 9 !+o ko0 1or0a9%Me90, .ek 1or0a /9 *ogod.' .ego dr9g%

    ML 1a'+ 1or0a 'e do!ro *odr&a. .a A.drod *+a1or0% Pro()o+'. ML1a'+o) 0og9 ! 9k+'9e. kao re/9r/% O) ML 1a'+o) /e 9)a'9 9 4re/40+drekor'909% ML 1a'+o) /9 *re1erra. 1or0a (a !+o ko'e /r9k9r/a.e*odake ko'e a*+ka-'a ra&% Kako /e 1or0ara ML 1a'+ (a)/ odde)e+o*era% Ra(+ ML a+a /9 do/9*. (a A.drod *+a1or09%

    Pr0er 0+ 1a'+a

    X0+ )er/o._:$%#: e.-od.g_:915:YX*red0eYX*red0e .a0e_:Mo!+.o *o/+o)a.'e: @*e_:(!or.: 4YX*red0e .a0e_:E+ekro./ko *o/+o)a.'e: @*e_:o!a)e(a.: 4YX*red0e .a0e_:ITEH: @*e_:(!or.: 4YX4*red0eY

    ML re/9r/9 ( a*+ka-'e 0o&e /e *r/9* .a /+ede .a.

    0+Re/o9r-ePar/er 0o'Pred0e _geRe/o9r-e/7;%ge0+7R%0+%0o'Pred0e;

    A*+ka-'a 0o&e /adr&a %ra 1a'+o)e kao re/9r/e% Ra 1a'+o) ko'ea*+ka-'a 0o&e kor/ /adr& a9do, )deo dr9ge 1a'+o)e% S) ra 1a'+o)re/9r/a ! re!a+ ! /a9)a. 9 4re/4ra drekor'90%

    Ne0a *ra)+a + ogra.e.'a *r krera.'9 ra 1a'+o)a 7o/0 *ra)+a o .a()91a'+a ko' 'e ra.'e *o0e.9;% Ako re!a 9!a- 09+0eda 1a'+o)e, re!a*ro)er dok90e.a-'9 A.drod *+a1or0e kako ! /e odred+ ko' /9 0eda1or0a kode- *odr&a. (a ra&e. 0o!+. e+e1o.% I/o )a& (a !+o ko'dr9g 1or0a ko' re!a da /e 9!a- 9 re/9r/e a*+ka-'e%Ako 1or0a 1a'+a ko'

    re!a da /e kor/ .'e *odr&a. 9 *oe.o0 A.drod //e09, a*+ka-'a e0o&da (ara& da /a0a odrad *ro)er9 1a'+o)a%

    Da ! /e *r/9*+o ra 1a'+9 *rogra0er/k, 'ed.o/a).o re!a kor/ko0a.d9 o*e.RaRe/o9r-e7;% Na *r0er, /+ede kod ! .a*ra)oI.*9Srea0 o!'eka da ! *r/9*o re/9r/ 1a'+9 4re/4ra4+e$%

    I.*9Srea0 F+e _ geRe/o9r-e/7;%o*e.RaRe/o9r-e7R%ra%+e$;

    2=

  • 8/10/2019 Android Skripta 1-10

    64/153

  • 8/10/2019 Android Skripta 1-10

    65/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    S+ka =%"% Prka( *okre.9e A.drod a*+ka-'e%

    Po/o'e d)a .a.a da /e 1or0ra'9 re/9r/ ra/*oreda% Na''ed.o/a).'.a. 'e da /e kor/ La@o9 Re/o9r-e Edor 9 E-+*/9 da ! /e d(a'.ra++a@o9 1a'+o)% Takoe /e 0og9 drek.o 0e.'a ML +a@o9 1a'+o)%

    4.0.>.Dad sa stilovima

    Kor/.k .er1e'/ A.dord a*+ka-'e, d(a'.er 0og9 9re)a kore.'e0/+o)a% Ko.ro+a ra/*oreda e+e0e.aa ()ede.a 'e ( Ve k+a/e, ko'a 0a)e+k !ro' kor/. o/o!.a%

    S+o) /e o(.aa)a'9 ago0 X/@+eY ko' /9 /0ee. 9 drekor'90re(4)a+9e/4 % S+o) /e akoe de.9 9 ML 1a'+9 a *oo0 /e ko0*a'+ra'99 )re0e ()ra)a.'a a*+ka-'e% S+o) /e .e 0og9 *reg+eda)akore.'e0 E-+*/e Re/o9r-e de/g.era a+ /e /*ra).o *rka(9'9 .ae09+aor9 kao .a /a0o0 9rea'9%

    U .a/a)k9 /+ed 'ed.o/a)a. *r0er kako /e kor/e /+o) ko' /9 /0ee.

    9 1a'+9 re(4)a+9e/4/@+e/%0+% De./a.a /9 d)a /+a, *r) /+ 'e (ao!a)e(.a *o+'a 9 1or09+ar9, dok dr9g 'e (a .eo!a)e(.a *o+'a% O!a)e(.a*o+'a !e *red/a)+'e.a -r)e.o0 !o'o0 )e+.o0 /+o)a $?* ko'a e !!o+do)a.a, dok o*-o.a *+'a !e *red/a)+'e.a !e+o0 !o'o0, /koe.a )e+.a $"*%

    X0+ )er/o._:$%#: e.-od.g_:915:YXre/o9r-e/YX/@+e .a0e_:o!a)e(.a`*o+'a`/@+e:YXe0 .a0e_:a.drodeCo+or:Yce?$#$aX4e0YXe0 .a0e_:a.drodeS(e:Y$?*X4e0YXe0 .a0e_:a.drodeS@+e:Y!o+dX4e0YX4/@+eY

    26

  • 8/10/2019 Android Skripta 1-10

    66/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    X/@+e .a0e_:o*-o.a`*o+'a`/@+e:YXe0 .a0e_:a.drodeCo+or:YcFFFFFFX4e0YXe0 .a0e_:a.drodeS(e:Y$"*X4e0YXe0 .a0e_:a.drodeS@+e:Ya+-X4e0YX4/@+eY

    X4re/o9r-e/Y

    4.0.1#. Dad sa temama

    Te0a *red/a)+'a /k9* /+o)a ko' /e *r0e.'9'9 .a /)e e+e0e.9 .ekeak).o/% Te0e /e de.9 .a / .a. kao /+o), kor/ /e ag X/@+eYko' /e 9)a 9 re(4)a+9e/4 drekor'909% Jed.a ra(+ka o e09 od /+o)a(d)a'a 'e/e o o e0a 0ora de /e de.e kao ar!9 ak).o/ 9A.dordMa.1e/%0+ 1a'+9%

    Xa**+-ao. a.drode0e_8/@+e4C9/o0Te0e8YXa-)@ a.drode0e_8/@+e4C9/o0Te0e8Y

    22

  • 8/10/2019 Android Skripta 1-10

    67/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    4.4.Deferen%iran&e sistemskih resursa

    S/e0/k re/9r/ /e kor/e .a / .a. kao re/9r/ /a0e a*+ka-'e%

    A.drod *ake /adr& /)e )r/e re/9r/a, ko'e 0o&ee *rera&)a 9a.drod%R *odk+a/9%

    U o)o' *odk+a/ 0og9 /e .a /+ede //e0/k re/9r/ (a A.0ra.'e /ek)e.-e ka 9.9ra + ka /*o+'a L/e 0e'+o)a, e+e1o.a d% Sa.dard. //e0 !o'a, D0e.('e *r0e.9 /+ka ko.a, S/e0 /+o)a e0a, Por9ke o greka0a, Krera.'e ra/*oreda e+e0e.aa kao -ra.'e 'ed.o/a). e+e0e.aa%

    Re1er.-'ara.'e //e0/k re/9r/a 'e .a / .a.a kao kada /e kor/e/*o/)e. re/9r/% N*r ako &e+ *ode/ da !o'a ek/a !9de /)e+o /)a*ore!.o 'e *ode/ ar!9 a.drod-o+or4darker`gra@% S/e0/k0re/9r/0a /e *r/9*a .a / .a. kako /e *r/9*a re/9r/0a a*+ka-'e%

    a.drod%R%/r.g%ok

    23

  • 8/10/2019 Android Skripta 1-10

    68/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    -. 5lementi korisniko' interfe&saPo/o'e d)a .a.a d(a'.ra.'a kor/.kog .er1e'/a *ro-ed9ra+.o dek+ara).o%

    Pro-ed9ra+. d(a'. od.o/ /e .a */a.'e Ja)a koda, a dek+ara). .a */a.'e ML7e.g% Ee./!+e Mark9* La.g9age; koda% U *rak/ /e (a krera.'e grakogkor/.kog .er1e'/a 9g+a).o0 kor/ ML%Pr0er =%? *red/a)+'a *r0er*ro-ed9ra+.og d(a'.a%

    Krera.'e0 .er1e'/a ak).o/ do!'a'9 /)o'9 19.k-o.a+.o/, '% )d+')o/ .aekra.9 9rea'a .a a' /e .a. o0og9a)a .erak-'9 /a kor/.ko0% O/.o).e

    'ed.-e kor/.kog .er1e'/a /9 o!'ek *og+ed 7!iew; gr9*e *og+eda7!iew@roup;

    *og+ed o!'eka 'a *re.o/ /r9k9ra 9 /e! .o/ (a*/ (g+eda /adr&a'a

    odree.og *ra)o9gao.og *odr9'a .a ekra.9, 9*ra)+'a /-ra)a.'e0e+e0e.aa, *o0era.'e0 /adr&a'a .a ekra.9 7scrolling; o/a+0 1akor0ako' 99 .a (g+ed de./a.og de+a ekra.a% U 'erar'/ko0 /a!+9 o!'ek*og+ed /9 +/o) /a!+a% A.drod ra/*o+a&e /a )e goo)0 /k9*o)0ao!'ekaa o)e )r/e kao o /9 d9g0ad, k)adra (a oda!r 7e.g%-e-k!ok; /+.o% O) o!'ek .a/+e9'9 k+a/9 Ve

    gr9*e *og+eda *o/e!.a )r/a o!'eka *og+ed ko'a /adr& 9*ra)+'agr9*o0 (a)/. o!'ekaa *og+eda gr9*e *og+eda 0e 'e o0og9e.ako0*+ek/.o/ *rka(a kor/.kog .er1e'/a% O!'ek o)e )r/e /9 .a/a.-ek+a/e VeGro9*%

    Slika -.0" K ?i&erarhi&ski prika) elemenata korisniko' interfe&sa

    25

  • 8/10/2019 Android Skripta 1-10

    69/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    I/-ra)a.'e e+e0e.aa /a!+a (a*o.'e od kore.a /a!+a ako o ak).o/ *r)o*o()a /)o'9 set-ontentie@450eod9 A.drod o*era).o0 //e09 *reda'ere1ere.-9 .a kore. o!'eka% S)ak *od)or /-ra)a /e /a0 *o()a.'e0 dra@450eode o *od 9/+o)o0 da )or /a0 *o/a)+'a (ae) (a +oka-'o0 )e+.o0,a+ rode+'/k )or 7gr9*a *og+eda; do.o/ ko.a.9 od+9k9 o )e+. *ro/ora (a

    /-ra)a.'e *od)ora .'ego)o' +oka-' .a ekra.9% S)aka gr9*a *og+eda 'eodgo)or.a (a re.dero)a.'e *rka(a /)o' *od)oro)a%

    -.1.@E la9out

    Naa *r)a A.drod a*+ka-'a 7Pr0er =%?; kor/+a 'e .a''ed.o/a).' *og+ed*extie@ko' /+9& (a *rka( ek/a !+a 'e d(a'.ra.a *ro-ed9ra+.o, o (.a da.'e kore. ML *r+ko0 d(a'.ra.'a kor/.kog .er1e'/a% S o!(ro0 da 'e*o&e+'.o kor/ dek+ara)a. d(a'. *r+ko0 krera.'a /+o&e.'eg kor/.kog.er1e'/a, 9 da+'e0 ek/9 !e o*/a. *o/9*ak krera.'a He++o or+da*+ka-'ekore.'e0 ML e.o+og'e (a d(a'. kor/.kog .er1e'/a% Jed.a od.a')e *red.o/ dek+ara).og d(a'.a 'e/e *o*9.a od)o'e.o/ d(a'.akor/.kog .er1e'/a od a*+ka-o.e +ogke% To (.a da 0a+e *ro0e.e 9 kod9.ee 9-a .a d(a'. a*+ka-'e o!r.9o% Dek+ar/a.'e TeVe *og+eda *o0o9MLa o!a)+'a /e .a /+ede .a.

  • 8/10/2019 Android Skripta 1-10

    70/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    androidBla$out,@idt7O)a' ar!9 odre9'e ko+ko e o)a' *og+ed da (a9(0e r.e ekra.a% U o)o0 /+9a'9,o)o 'e 'ed. *og+ed ko' /e kor/, e 'e 0og9e (a9(e a) ekra., o o(.aa)a)red.o/ ar!9a 8>llparent8%

    androidBla$out,7eig7tO)a' ar!9 /e *o.aa /+.o ar!99android2layoutwidth% Ra(+ka 'e 9 o0e o /ear!9 android2layoutheightod.o/ .a do/9*.9 )/.9 ekra.a%

    androidBtext

    O)de /e 9!a-9'e &e+'e. ek/ ko' *extie@re!a da *rka&e% U o)o0 *r0er9, kor//e re/9r/ *a /r.g 790e/o drek.o 9.ee )red.o/ /r.ga;% O)a' /r.g 'e

    de./a. 9 1a'+9 resBvaluesBstrings.x-l% Pr+ko0 9!a-)a.'a /r.go)a 9 a*+ka-'9*re*or99'e /e kore.'e re/9r/a, a .e drek. 9.o/ )red.o/ /r.go)a% O)o 'edo!ra *rak/a (ao o o0og9a)a +oka+(a-'9 a*+ka-'e, od.o/.o 0og9.o/)e'e(.o/, !e( 0e.a koda +a@o9 1a'+a%

    Tabela -.0 K naen&e atributa elementa Te7tHieB

    ML +a@o9 1a'+o) .a+a(e /e 9 1o+der9 /res/la$out/9 ok)r9 *ro'eka%

    Dodaak (a E-+*/e a9o0a/k krera *odra(90e)a. +a@o9 1a'+, main.xml% U*r0er9 6%$ o)a' 1a'+ 'e g.or/a., a /a0 +a@o9 'e krera. drek.o 9 kod9% Da !/e kor/o ML +a@o9, .eo*od.o 'e .a. odgo)ara'9e (0e.e%

    Na'*re 'e *ore!.o o)or 1a'+ /res/la$out/main.xml , 9 .'ega 9!a- kod *rka(a.

    9 *r0er9 6%$ /a9)a (0e.e%

    Za0 re!a o)or 1a'+ 4re/4)a+9e/4/r.g/%0+% O)de /e .a+a(e )red.o//r.go)a ko' /e kor/e 9 a*+ka-'% Pore!.o 'e 9!a- /+ede kod

  • 8/10/2019 Android Skripta 1-10

    71/153

  • 8/10/2019 Android Skripta 1-10

    72/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    androidBla$out,@idt7="fill,parent"

    androidBla$out,7eig7t="fill,parent"

    androidBla$out,@eig7t="1"

  • 8/10/2019 Android Skripta 1-10

    73/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    androidBla$out,@idt7="fill,parent"

    androidBla$out,7eig7t="@rap,content"

    androidBla$out,@eig7t="1"/

    e="1Fpt"

    androidBla$out,@idt7="fill,parent"

    androidBla$out,7eig7t="@rap,content"

    androidBla$out,@eig7t="1"/

  • 8/10/2019 Android Skripta 1-10

    74/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    -.".".DelativeEa9out

    (elative2a$out*red/a)+'a gr9*9 *og+eda ko'a *rka(9'e )e Ve e+e0a.aakore.'e0 re+a). *o(-'a% Po(-'e /9 re+a).e 9 od.o/9 .a e+e0e. /og.)oa 'erar'e + 9 od.o/9 .a -e+o *odr9'e (elative2a$outa%

    Slika -.04 K DelativeEa9out

    Sadr&a' 1a'+a res/la$out/main.xml

  • 8/10/2019 Android Skripta 1-10

    75/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    androidBtext="" /

  • 8/10/2019 Android Skripta 1-10

    76/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    -.".0.TableEa9out

    *able2a$out'e gr9*a *og+eda ko'a *rka(9'e /)o'eVe e+e0e.e 9 redo)0a ko+o.a0a%

    Slika -.0- K TableEa9out

    Sadr&a' 1a'+a res/la$out/main.xml

  • 8/10/2019 Android Skripta 1-10

    77/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

  • 8/10/2019 Android Skripta 1-10

    78/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    e+e0e. *able([email protected]+oga. 'e e+e0e.9

  • 8/10/2019 Android Skripta 1-10

    79/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    -.".4.GridHieB

    Lridie@*red/a)+'a gr9*9 *og+eda ko'a *rka(9'e e+e0e.e 9 d)od0e.(o.a+.o'0re& /a 0og9.o9 /kro+o)a.'a% E+e0e. /e 9!a-9'9 *o0o9 2istAdaptera% Uo)o0 *r0er9 !e *rka(a.o krera.'e 0re&e /a 0a+0 /+ka0a 790!.a+/;%Kada /e (a!ere .eka od .', oa/ *or9ka e *rka(a *o(-'9 /+ke%

    Slika -.0 K GridHieB

    Sadr&a' 1a'+a res/la$out/main.xml

  • 8/10/2019 Android Skripta 1-10

    80/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Lridie@ gridvie@ = 4Lridie@5 findie@:$%d4(.id.gridvie@5;

    [email protected]@ %mageAdapter4t7is55;

    [email protected]%tem-lic#2istener4ne@ n%tem-lic#2istener45 8

    public void on%tem-lic#4Adapterie@

  • 8/10/2019 Android Skripta 1-10

    81/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    if 4convertie@ == null5 8 // if itNs not rec$cled initiali>e

    some attributes

    imageie@ = ne@ %mageie@4m-ontext5;

    [email protected]$out6arams4ne@ [email protected]$out6arams4!F !F55;

    [email protected]*$pe4%[email protected]*$pe.-&)*&(,-(65;

    [email protected]! ! ! !5;

    else 8

    imageie@ = 4%mageie@5 convertie@;

    [email protected]%mage(esource4m*7umb%dsOpositionP5;

    return imageie@;

    // references to our images

    private %ntegerOP m*7umb%ds = 8

    ([email protected],H ([email protected],G

    ([email protected],Q ([email protected],F ([email protected],R ([email protected],S

    ([email protected],0 ([email protected],1

    ([email protected],H ([email protected],G

    ([email protected],Q ([email protected],F

    ([email protected],R ([email protected],S

    ([email protected],0 ([email protected],1

    ([email protected],H ([email protected],G

    ([email protected],Q ([email protected],F

    ([email protected],R ([email protected],S

    ;

    Jrimer -.1: K Flasa +ma'eAdapter

    Na'*re /e 0*+e0e.ra'9 0eode rode+'/ke k+a/e :aseAdapter% Meodaget-ount45)raa 9k9*a. !ro' e+e0e.aa o)og ada*era% Meoda get%tem45)raae+e0e. ko' /e .a+a( .a *ro/+ee.o' *o(-'% Meoda geIe0Id7; )raa d redae+e0e.a% U o)o0 *r0er9 /e o)e 0eode .e kor/e 7)raa'9 re/*ek).o .9++ #;%

    Meoda getie@45 krera .o) *og+ed (a /)ak9 /+k9 ( %mageAdaptera% N'o' /e*ro/+e9'e *og+ed (a ko' /e *ro)era)a da + 'e .9++% Uko+ko 'e/e, %mageie@ 'e./a.-ra. ko.g9r/a.% Uko+ko o)a )red.o/ .'e .9++, o (.a da 'e %mageie@ra.'e ./a.-ra. 9 o0 /+9a'9 /e kor/ a' o!'eka%

    Meode set2a$out6arams45, setcale*$pe45 set6adding45 re/*ek).o*odea)a'9 d0e.('e *og+eda, * /ka+ra.'a ra(0ak (0e9 e+e0e.aa%

    Na kra'9 ! re!a+o .a*o0e.9 da 'e .eo*od.o 9!a- &e+'e.e /+ke 9 1o+derres/dra@able/%

    5$

  • 8/10/2019 Android Skripta 1-10

    82/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    -.".-.TabEa9out

    Kore.'e kar-a 7a!o)a; *r+ko0 (rade kor/.kog .er1e'/a )eo0a 'e*o*9+ar.o% A.drod *+a1or0a o0og9a)a d)a ra(+a *r/9*a *r+ko0 (radeo)ak)og kor/.kog .er1e'/a% Pr) *r/9* 'e/e 'ed.o/a).a *ro0e.a *og+eda 9ok)r9 /e ak).o/ *r+ko0 (!ora &e+'e.e kar-e, a dr9g *r/9* 'e *ro0e.aa)e ak).o/ *r+ko0 (!ora kar-e% U !+o ko0 /+9a'9, .eo*od.o 'ekore.'e k+a/a *abost*abidget% *abost*red/a)+'a kore. )or +a@o9a% Uok)r9 .'ega .a+a(e /e e+e0e. *abidget (a *rka( do/9*. kar-a 3rame2a$out(a *rka( /adr&a'a (a!ra.e kar-e%

    Slika -.0: K TabEa9out

    U o)o0 *r0er9, /)ako' kar- !e dode+'e.a ra(+a ak).o/%

    Na'*re 'e .eo*od.o krera r ra(+e ak).o/% To /9 ArtistsActivit$,AlbumsActivit$ongsActivit$% S)aka od .' e ! *rka(a.a 9 *o/e!.o' kar-%

    Za *oeak, /)aka ak).o/ e *rka()a odree.9 *or9k9% Na *r0er

    public class ArtistsActivit$ extends Activit$ 8

    public void on-reate4:undle saved%nstancetate5 8

    super.on-reate4saved%nstancetate5;

    *extie@ textvie@ = ne@ *extie@4t7is5;

    [email protected]*ext4"*7is is t7e Artists tab"5;

    set-ontentie@4textvie@5;

    Jrimer -.1= K DelativeEa9out aktivnost

    5"

  • 8/10/2019 Android Skripta 1-10

    83/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Preod. kod od.o/o /e .a ak).o/ ArtistsActivit$% Za ak).o/AlbumsActivit$ ongsActivit$kor/ /e / kod, 9( (0e.9 *or9ke ko'a e /e*rka(a% Tre!a 9o da ak).o/ .e kor/e ML +a@o9, )e *o0o9 koda*o()a'9 *extie@% Nara).o, o)e ak).o/ 'e .eo*od.o 9!a- 9 A.drod0a.1e/ 1a'+%Za /)ak9 kar-9 *ore!.o 'e *r*re0 d)e ko.e% Jed.a /e *rka(9'e

    9 /+9a'9 kada 'e kar-a (a!ra.a, a dr9ga kada kar-a .'e (a!ra.a%

    Slika -.0= K Jrimer i)'leda ikona )a karti%e

    U o)o0 *r0er9, /a ko.a e /e kor/ (a /)ak9 kar-9% S+ke ko.a ! re!a+o9!a- 9 1o+der res/dra@able/% U /o0 1o+der9 re!a krera .o) ML 1a'+ .a()a ga

    ic,tab,artists.xml% Kod ko' re!a 9!a- 9 1a'+ 'e /+ede

  • 8/10/2019 Android Skripta 1-10

    84/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Jrimer -."# K Sadra& fa&la res,la9out,main.7ml

    O)a' +a@o9 e *rka(a kar-e o0og9 .a)ga-'9 (0e9 /) ra.'e krera.ak).o/% E+e0e. *abost (ae)a e+e0e.e *abidget 3rame2a$out 9.9ar/e!e% U (a)/.o/ od &e+'e.og ra/*oreda o) e+e0e.aa, 0og9 /e kor/

    ra(+ +a@o9 (a .'o)o *o(-o.ra.'e% Na *r0er, (a .'o)o )erka+.o*o(-o.ra.'e 0o&e /e kor/ 2inear2a$out% E+e0e. 3rame2a$out re.9.o 'e*ra(a. (ao o /e /adr&a' re.9.e kar-e 9(0a ( ek9e ak).o/ ko'a /eod.o/ .a 9 kar-9% Tre!a *r0e e+e0e. *abidget 3rame2a$out0a'9 /)o'ede.kaore% To /9 tabs tabcontent, re/*ek).o% O)a 0e.a 0ora'9 da /ekor/e kada .eko re1ere.-ra o)e e+e0e.e%

    Sada re!a .a*ra) 'o 'ed.9 ak).o/% Mo&e /e (a!ra .'e. *ro()o+'a. .a(),a+ 'e )a&.o da /e 9 Ma.1e/ 1a'+9 de.e da 'e 9 *a.'9 *oe.a ak).o/% O)aak).o/ e /e ra(+ko)a od o/a+, ra.'e /*o0.'a. ak).o/, (ao o o.a.a/+e9'e k+a/9 *abActivit$% U .a/a)k9 'e da /krae. kod *oe.e ak).o/

    7.'e *rka(a. *ake ko'e0 k+a/a *r*ada, kao . 9)e(e.e k+a/e;

    public class ello*abidget extends *abActivit$ 8

    public void on-reate4:undle saved%nstancetate5 8

    super.on-reate4saved%nstancetate5;

    set-ontentie@4(.la$out.main5;

    (esources res = get(esources45; // '>imaju se resursi

    *abost tabost = get*abost45; // A#tivnost *abost

    *abost.*abpec spec; // *abpec >a sva#u #articu

    %ntent intent; // %ntent >a sva#u #articu

    // %nstanciranje %ntenta intent = ne@ %ntent45.set-lass4t7is ArtistsActivit$.class5;

    // %nstanciranje *abpeca >a sva#u #articu i dodavanje *abostu

    spec = tabost.ne@*abpec4"artists"5.set%ndicator4"Artists"

    res.get+ra@able4([email protected],tab,artists55

    .set-ontent4intent5;

    tabost.add*ab4spec5;

    // ledi isti postupa# >a ostale #artice

    intent = ne@ %ntent45.set-lass4t7is AlbumsActivit$.class5;

    spec = tabost.ne@*abpec4"albums"5.set%ndicator4"Albums"

    res.get+ra@able4([email protected],tab,albums55

    .set-ontent4intent5;

    tabost.add*ab4spec5;

    intent = ne@ %ntent45.set-lass4t7is ongsActivit$.class5;

    spec = tabost.ne@*abpec4"songs"5.set%ndicator4"ongs"

    res.get+ra@able4([email protected],tab,songs55

    .set-ontent4intent5;

    tabost.add*ab4spec5;

    tabost.set-urrent*ab4H5;

    Jrimer -."1 K Joetna aktivnost aplika%i&e sa karti%ama

    5?

  • 8/10/2019 Android Skripta 1-10

    85/153

  • 8/10/2019 Android Skripta 1-10

    86/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    public void on-reate4:undle saved%nstancetate5 8

    super.on-reate4saved%nstancetate5;

    set2istAdapter 4ne@ Arra$Adapter

  • 8/10/2019 Android Skripta 1-10

    87/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

  • 8/10/2019 Android Skripta 1-10

    88/153

  • 8/10/2019 Android Skripta 1-10

    89/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    O*o./ 0e.9 9 *rera&)a9 .a A.drod "%=%

    Uko+ko /e a*+ka-'a ra()'a (a )er('9 A.drod "%= + .&9 /adr&a' 0e.'a o*-'a /e*o'a)+'9'e .a d.9 ekra.a .ako. k+ka .a d9g0e 5enu% O)a' 0e. /adr& do 2/a)k 0e.'a 9ko+ko *o/o' )e /a)k A.drod o/a+e /a)ke /0ea 9 o)ero0e. ko' /e o)ara dodro0 .a a/er 5ore%

    Da ! /e .a)eo 0e. /a o*-'a0a (a .ek9 ak).o/ *ore!.o 'e *re*/a 0eod9

    onCreate,ptions5enu67% U o)o' 0eod 'e 0og9e 9!a- .a 0e. 9 )d9 re/9r/a7de./a. 9 ML 1a'+9; 9 5enu

    O)errde*9!+- !oo+ea. o.CreaeO*o./Me.97Me.9 0e.9; Me.9I.aer .aer _ geMe.9I.aer7; .aer%.ae7R%0e.9%0o'`0e., 0e.9; re9r. r9efUko+ko /e ra()'a a*+ka-'a (a A.drod "%=% .&e )er('e //e0 *o()a 0eod9onCreate,ptions5enu67kako ! *o kada kor/.k *o *r) *9 oo)r 0e. krerao

    0e. o*-'a%

    5.3.1.1. Obrada dodira kao dogaaja

    Kada kor/.k /e+ek9'e /a)k9 0e.'a ( 0e.'a o*-'a //e0 *o()aon,ptionsIte-elected670eod 9.9ar .ae ak).o/% O)a' 0eod *ro/+e9'e/e+eko)a.9 /a)k9 0e.'a% Ide.ka-'a /a)ke 'e 0og9a *o()o0 getIte-Id67,ko'a )raa 'ed./)e. ID /a)ke 0e.'a ko' 'e de./a. 9 a.droddar!9979.9ar 0e.'a kao re/9r/a;% I/*)a.'e0 )red.o/ o)og ar!9a 0og9e 'e()ra)a ra(+e ak-'e% N*r

    O)errde*9!+- !oo+ea. o.O*o./Ie0Se+e-ed7Me.9Ie0 e0;

    5

  • 8/10/2019 Android Skripta 1-10

    90/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    44 Ha.d+e e0 /e+e-o. /- 7e0%geIe0Id7;; -a/e R%d%.e`ga0e .eGa0e7; re9r. r9e -a/e R%d%e+* /oHe+*7; re9r. r9e de1a9+ re9r. /9*er%o.O*o./Ie0Se+e-ed7e0; ffUko+ko 'e /a)ka 0e.'a 9/*e.o o!rae.a odgo)or 'e TRUE 9 /9*ro.o0 'e*ore!.o *o()a on,ptionsIte-elected670*+e0e.a-'9 /9*erk+a/e%

    5.3.1.2. ro!ena !enija o"#ija toko! i$%r&a%anja

    Nako. o //e0 *o(o)e 0eod9 onCreate,ptions5enu67, (adr&a)a ./a.-9.a*9.'e.og 0e.'a )e .e *o()a onCreate,ptions5enu670eod9 o/0 9ko+ko0e. ( .ekog ra(+oga *o/a.e .e)a+da.% Soga /e 0eodaonCreate,ptions5enu67kor/ /a0o (a krera.'e .-'a+.og 0e.'a o*-'a a .e (a(0e.e oko0 &)o.og -k+9/a ak).o/%

    Za (0e.e 0e.'a o*-'a ko'e /e !a(ra'9 .a dogaa'0a ko' /e dea)a'9 oko0&)o.og -k+9/a ak).o/ kor/ /e 0eodonPrepare,ptions5enu67% O)a' 0eod*ro/+e9'e 5enuo!'eka 9 re.9.o0 /a.'9 *a 'e 0og9e )r (0e.e kao o/9 doda)a.'e, !r/a.'e .o) /a)k + o.e0og9a)a.'e odree. /a)k%

    U A.drod "%=% .&0 )er('a0a //e0 *o()a onPrepare,ptions5enu67/)ak*9 kada kor/.k o)or 0e. o*-'a 7*r/.e Me.9 d9g0e;%

    -.0.".Freiran&e kontekstualnih meni&a

    Ko.ek/9a+. 0e. 'e krea'9 0e. ko' /e *o'a)+'9'e kada kor/.k ()ra)a*rod9&e. k+k .a e+e0e.9% O0og9a)a ak-'9 .ad /e+eko)a.0 /adr&a'e0 +ok)ro0 9 ko'e0 /e ko.ek/ *o'a)+'9'e%

  • 8/10/2019 Android Skripta 1-10

    91/153

    Ra()o' a*+ka-'a (a o*era). //e0 A.drod

    Prka( krea'9eg ko.ek/9a+.og 0e.'a 7+e)a /+ka; ko.ek/9a+.og a-o. !ara7de/.a /++ka;%

    Ko.ek/9a+. 0e. 'e 0og9e o!e(!ed (a !+o ko' *og+ed a+ /e .a'ee kor/(a e+e0e.e 9 L/Ve GrdVe9%

    Po/o'e d)a .a.a (a o!e(!e)a.'e ko.ek/9a+. ak-'a

    Krea'9 ko.ek/9a+. 0e.% Me. /e *o'a)+'9'e kao *okre.a +/a /a)k0e.'a% Kor/.k 0o&e da ()r ko.ek/9a+.9 ak-'9 .ad 'ed.0 *o 'ed.0e+e0e.o0%%

    Ko.ek/9a+. a-o. 0ode% Ko.ek/9a+. a-o. !ar /e *o'a)+'9'e .a )r9

    ekra.a /a e+e0e.0a ko' 99 .a /e+eko)a. e+e0e.% Kor/.- 0og9 da()ra)a'9 ak-'e .ad )e e+e0e.aa /o)re0e.o 79ko+ko o a*+ka-'ado()o+'a)a;% O)a o*-'a 'e o0og9e.a /a0o .a )er('a0a A.drod =% )0%

    -.0.0.Freiran&e kreta&ue' kontekstualno' meni&a$; Reg/r9'e /e *og+ed 7!iew7 /a ko'0 e ko.ek/9a+. 0e. ! *o)e(a.*o()o0 register$orContext5enu67 *ro/+e)a.'e0 odgo)ara'9eg *og+eda%Uko+ko ak).o/ kor/ ist!iew + @rid!iew *