Embedded Android Workshop AnDevCon 3
Upcoming SlideShare
Loading in...5
×
 

Embedded Android Workshop AnDevCon 3

on

  • 849 views

Karim Yaghmour's "Embedded Android Workshop" at AnDevCon3

Karim Yaghmour's "Embedded Android Workshop" at AnDevCon3

Statistics

Views

Total Views
849
Views on SlideShare
658
Embed Views
191

Actions

Likes
1
Downloads
25
Comments
0

13 Embeds 191

http://www.opersys.com 167
http://92.243.1.141 5
http://wwv.opersys.com 4
http://dwww.opersys.com 3
http://ftp.opersys.com 2
http://wwww.opersys.com 2
http://wwqw.opersys.com 2
http://vww.opersys.com 1
http://qww.opersys.com 1
http://waw.opersys.com 1
http://karim.linux-unix.questionfor.info.opersys.com 1
http://www.kpbird.com 1
http://sss.opersys.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Embedded Android Workshop AnDevCon 3 Embedded Android Workshop AnDevCon 3 Presentation Transcript

  • ABCA DEFA A B F A D B F A
  • A BC DBA BEB BF A CB C B E DD ) E C A B A! C D4 AF BC CD BC C !! C B E DD C"! !F B! ! CF C # C D B AD $ %& ( ) A D C DB B B * A + ,$ E C " BC C B " - A " " , . " C CA D D B C F / 01C " B B 2 .(& DD A B A C B " C B A F / C" / C B C CB 3 BC C 0) E C A B A! C D4 AF 2 B C" B 3 BC 51(67)8 C D " A B 0 F 2 A B C B* , C" $1 C A C B AF 9BC D 3B" D C1C " B B /// C D! DD !A
  • F C7 C A A& : CB ;;;1C " B A A B AC B * C !C B , CB "$ D ) E$ "$ View slide
  • F AC A= "5B D E " B < View slide
  • A BA A AB6B= C D& "B CBD / C%B CD B A BCA/BC C # C D) E D >
  • 6B5 B C.@ ?
  • 5 B C B CBD / C BF " C B AC B D D)B E E C B DB D4 A CD F A E7 "CB A FC / C FB A C B F9 "1 D 4 A "CB / C AF B D ) "CB FCBC - ) "CB FB A 1 C& B * BCA/BC B CB B, D& C C C A AB B CB"E AB C C DD B A $ E A $B A DB" CDB *E%C<$ = ?<$E% $ $ E($ F%C$ %8C$ C75,C E * BCA/BC A A ,6 $ )C$ C$ B A B 5 * BCA/BC A A , BD CB$ C% $ D B $B AB C D C * BCA/BC A A ,( A E D EC D A "BA E D B C$ C A F "" "$D D C B A C CDB C "$ B A B " C 7) A
  • .@6C / C%8 C 0B 2EB =1E ( = 6 9 E8. D A B / C B B ! BDB " G
  • ! "B D# E + B B ! D# ! "B D# E + E + ! "B D# ! A # ! D# E + E + E + AD ;
  • 8 " C *8 DB *, HIHI,. B A / C . : %7! DB DB/B%C B AB / F A B CB A DA E CD A B CA ".7 A CD A B A C D B 0FCB 2 BC B A$ E C6 BE C C A B A /D D C A
  • = C C" 6C B A &BCC %B" BC A " A DBC A DBC "CB " / F$ 7E$ DB $ A /B DBA F )B " C $ A AF A ( F * 1,6C !%B" D ( F B B CA B "BE A J A E DC " /B A B BC " A <) / "$ A /B J DB "K)B " C F BCA A A A C B ( F( F C AK BC A AC A BC A " CLC B 1 D F B A B CD > FC F " F C " C A A D , A 8 E DF C1 =B A B B AB "/ AC A
  • G AC A C B A ; 5 F AC A ; C AC A >! B ; AC A ?!) ; 1 AC A ! ! BC EB AC A ! 5C ) AC A ! C " CFC BA FB AC A != DF M BF D4 A M EB AC A M. 6 C M8 E AC A < !7 C BD B A/ M D C"C " CFC BA B A = DF
  • DG> B EB C AB< B *E >G> C N B C ,O> P B . DBC F CF C
  • B N B "I& BA " 7% C " D A C DB B C C (E$ 7 $ 5C B $ 7$ D B DD$ 8L7)7 $=B A DB B C C E C B$ BD "$ = $ &C$ C $BF DB B C C E C B$ BD "$ C $ )&&$ . $ B C A E 8 $F 6B DDB A % B CD$ C AC A EBC $ DB4 C $L $ 6Q8 8119 $ <
  • 1 =B A B0 B "C G " B A D F D B / BE D " CB CB EB D F B A C D C BC C$ : E $B AF C D F : C " C / BE A E A AC AR$ C D $ $B A C D F B CD 2. BC / B 1= A C/ B F $ B $ D DF C A C E8 B C"B 4B / F BCA D DF C $ B $ S B 0 B 2C " N AC A BD BC BA B F A " A" A E$ B B" B "1= BC" B E ! BF D C A E F 1 CB C C $ E F $ L AB $8 ) D $ =B A EB B C C = $E C B$ &C$ BD "$ C $ D A C D B (E$ 5C B $7 $ 8L7)7 $ D B DD$ 7$ /BC D B C " $ DD C B 4B D B >
  • < & "B 5CBD / C A B A6CB A "C " N / AC A C B E C1CB E C " ?
  • < A%BC 9 C AC A 1 C %C S * 1 %,9 C A BE B B AE C TU C%& C # C D C " DB B A C B B AC A " " C D 1 % A AC E C ?D 1 B 1 % FCB B B AC A " " C D EB B" A F 0C 2 $B E CB 0" 2= DF * , A C # C B " C " / B N C A AD A C C D " F BC )9 B A " = DF B C A E $ A " 6Q8N 8 A
  • < A &9 C C8. C CB % F & *B B C%&, 1 % E B & *B B &, =BE " C%& C C B /B B A " " B / C%& B A &C%& BC DB 6 V B A )6. D D 6 ) 6 B A F : 0 : C B !2 A C C B B D : A FB" $ C%&EB F A CBF BAA C%&!&C%& D 6 6 : F ! " F !" F G
  • < 6CB A " .AC A ( FL C D & : "AC A & " * 8 ) ( 1 7 ) /! B , B F AAC A D B B F AAC A 1 B 8BD A C C 0 C AC A2E C C # C B C EBAC A E B" " / A / AF B" C 0 AC A B 2D B C " ))! E E A 0B C EB 2 ;
  • << C " N / AC A 1 %B AC A EBC 3 F EB B A 8BE "B CDB L EB( # C ! )) D B " A B"C D /! C "7 # C B AC A BC C W" " D
  • <> C B E 0 C 2 C BC B C BA F AC A EBC DB4 C L 6Q8 81198 " C A " C D BE " C /
  • < ? 1CB E C "5 A "%B C " D ?$ >$<<A- ?$ ; $<A?- >$;??$A - A$< ?$A - ( G$ <- ?$; $ >- B A ?$ ? $> C" C " D AC A A B 1CB FBEB FCBC C FLE B C A AC A C B =BCD B A )B E BA7 1 F C $ 76E B =BCD S / C1CB N 1 F)9$ BE " C S CB B C B A7 EB $ S A" CA C BD C D B A C C BCC C C D AC A G
  • > %B CD B A =BCA/BC C # C D 7 C AC A C & : C C C & :$ B C AC A 9 / BE F DBA / C (E :G? E7% C= % B C A E BB C $ D C /BE E $ BC D $
  • > D B ) ) D /BC E. CD 1 % B %B B" " D B F C 0B 2E D AB D B F A A C $ A C $C CA "$) E C D B F BAF$ AAD $ E=BCA/BC D B F ) B B A CCB 7 ) E )B B E BD CB E D C B A CB" . 6% C CDB D B F C E A D B F /BC D B F ". AB BF /BC E. A D B D AB <
  • > D B F >
  • ? ) E D( # C D A E B AC C A F "" " ?
  • ? ( # C D A E D B A A F "" " B A / ! EB ! & :/ C B F)9 /! ) " =" C DD A A C B A E *$,%B CD A E D C8. C A E B F C A F "" C D C B C A
  • ? A E B AC C )9 B AC A M DB B" L) B A )9 D B F A CM C B " B B B" A: M E C " SBC A : BAF M A F " FC A"D B C M DE. FB A (E D B C . 9LE C :G? BA8)9 C8. B C B E F BC) D B A E C B AC A D G
  • ;
  • ? A F "" "BAFAADD C CCB E / " B "CB * ) " ,
  • A E "E AC A ; )B E 5CBD / C 7 C F87 8B E ) E D D CE C< 1E CB C C B " CE> D BC E EB B" C? & :9 C <6 A CA =BCA/BC C > 1 %G 8B E . C B
  • AC A D7 DEB%C B A C BA( D C A C B
  • D T8 D B D CB B C BC B DB" B BC A / E CB BC A AC" 8 C $ H $ B A HDB *, D E CE 6C BA B ( E C %C E A C <
  • 77 TB C D B" /! C /!A " B A BC"& B D C . : " B$F /!C # C A BC"7 0 B BA2 A 7 1FS7 5 C A EB >
  • D DB DB" B BC ! ! C C DF BE C C A B A /D D C D C "" C & B FB /C EBC" E DB B" D & D D BC D C D :DB B" B C ?
  • A
  • < EB7 CD D BF B J D@E& CDB /B B A AC AEB :D E T XB E U B CE TX CE U B6C BA B ( E C B T XC E CU ) BD T : C " C( E C*, %C E A C T X C E A CU B G
  • > %C B A C BA%C ) B B B FB B B D BC A DB C C BA XB E UYX CE UYXC UYX C E A CU BE C B CF E CC A A B ) 81 C CD F "! " CB DB C C BA B/ C BA BA %C CD B !C BC B DJ A C C C E DB B" D & C BA C B " C " BC FBEB C BA 1FS AC A %7 C E A C BA C B & C CC "BD B" / B C BA =B A C C C "D B" =B A C C BA C " B C BA / B D B" ;
  • ? ( D C A C B AC A (% T6 A CD B D8 L 7% A C C C B B"6 A C B / E B $ AB7 BA D A CB "7 CB) &B " B" *7)&,7)& A BA " CB FBEB CBA <
  • 5CBD / C 7 C A.7)B B CB" C !% CD B AD D C CCB A B A LA & B B A EB 6 85 <
  • .7E C " FB A CBC L / B AL /CC *B ,) BC A @E& C A BD B C " FBEB.7 D B A" E B A C E )B " 8 B <
  • )B B CB" BC A C C %C EB CD E B C EB7 C B CB" %C EB AB B A E D D C: C B CB" % F AB B BC A : C B A E * ), D& )6 %C EB )68 / C B F FB A CB" *( , <
  • C !% CDE C C AB C E .7)$ C7)% CD C C C % C C CB % C .(7 B B BC B AF : A CD C # C A 0 : 2 B AF :) "CB B FB A C B . C C D CD D F A BC A B B <<
  • 8B E A E DB B B B A B AC "B A B " 8)9. " 8)97D D " B E B <>
  • B B B B A B A. C % C " : "F A A AC A ) E " D4 A B E B $ B C "BD "%C E A B AF A " CB B E A FCBC C D ! ZZ BB DF A B E F B BF * C/BCA D B F , B E F ) D B $ BD B A CB BF B " B E A C D FBEB " F87 7D D " B E B * ,) N B / D CBA B & :!. : B B <?
  • C "B A B " 8)9B BJ 8)9I ) E D BF B E %7 D BA C ) D B 7E%1( 8 BDC " 8)9 !!A E C B AC A D! A ! A ! A : D%C C # B A / $ EB C& : D )9 DB *C8.J , B A B/ 5 CB A / $ "/ A C " C8)9 EB C C C # BC B A ) / BA B A B 8)9 <A
  • . " 8)9 %B B E A A CX C S U!S ! C B X C S U!S ! AC A D A CF B E A 8)9 1 B C B X C S U!S ! B D C A CF "/ B E C BC C # C A F B<6 A B E A AX C S U X A U! A F A> D B / )9 8B E A / F BC A F B <G
  • < 7D D " B E B AC A B A8B E DB B" D C / : A A B A )B E LE B F87 B FBEB&D A %7 E DB B" D 7 E B A C B A / DB B" D )C B BEB C CB E B A 0B AC A B 8B E E 2 <;
  • < 1E CB C C & >
  • < 1E CB C C AC A >
  • > D BC6 BA C9 C7V " D CE C E EB B" C&B C *= D , >
  • > 6 BA CB !F BF !F BA C DF BA C C AC A . 6 FB A 7D D 0B F 2 C C AEB0B F 2B !F BF !C E C .7 FB AC E C F C "CBD A C " DB" # B F . B DB B C C EBC B >
  • 5B B 0x000003860000-0x000003900000 : "misc" 0x000003900000-0x000003e00000 : "recovery" 0x000003e00000-0x000004300000 : "boot" 9 C 0x000004300000-0x00000c300000 : "system" ! D 0x00000c300000-0x0000183c0000 : "userdata" !AB B 0x0000183c0000-0x00001dd20000 : "cache" ! B 0x00001dd20000-0x00001df20000 : "kpanic" 0x00001df20000-0x00001df60000 : "dinfo" 0x00001df60000-0x00001dfc0000 : "setupdata" 0x00001dfc0000-0x00001e040000 : "splash1" 0x000000300000-0x000001680000 : "modem" 5C D C&# A ><
  • > 9 CBC BC A E C BCA/BC A A7 B 4 EC D C C " AF D BC C A A BC [ C *,7 B 4 " E C F DE C D BC C >>
  • > AC A 71 $ BC $B AC ! C C B D B AD D D CD 11E BAS D C C BC AB D BAFA CE DB B" C *F A C : DB B" C, E A A C A B [ C @4 " *V " , D A B CE C >?
  • >< V " $7 B [ C @4 " *V " ,CBD / C !FB ! DA !B [ C !B [DB C D BC *0 D B AC A C B V " 2$CBD / C !FB ! C !S ! AC A( D BC LE*, B V " N DB *,CBD / C !FB ! C !SBEB! D!B AC A! C B! !V" 7 SBEB >A
  • C BA B *, BC D CE C*, DB" B D CE CN C *, CBD / C !FB ! CE !SBEB! D!B AC A! CE C! D CE C SBEB BC "" D CE !DB B" C BC E EB B" C A7 C1(3[=1E &B C >G
  • ? & :9 C >;
  • ? AC A DBB /D D B A C6 A CB D DM D BC A E D C( E& "" C ?
  • A =BCA/BC C6 6 V C " ) 6. 7% * BE A C%& BD B D ,C% EB B C C C E A A F"B / B[ B) B A CBD F C AC E C *!A E! F ,9 DB B A 9 F BCA A E *!A E! E ,&" EB B C C C E A A F " 6B " 9 F BCA 6 6B C 8 B A EB B C C C E A A FB A * A & A C B B B B CB A C C "" A , BD CB EB B C C C E A A F BD CB * A L<& C AC E C A C B B CB A C "" A ,% / C EB B" D 0BB 2 C B C EB B C C C EA A F C C D C EB" 5 A 1C B C C &" %C C D CB C %C : D(BA &B C 7 C B EB B C C C E A A FC X D B BD U X(7& E C U ?
  • G 8B E . C BEB !AB B TU . C AB B ! D TU D D A !A E ! C ! ! F !D ! B ?
  • &F 6 $ D& $ &$ 1 C& $ 8 % : D A % C BA C$ L 7% F :)B D CE DB B" C$ E A$ C A$ A$ BAFA$ ?
  • ; )B E FBEB T FBEB B " B" Z FLE Z F)9 F AC A FBEB T FBEB B " B" Z )B E Z B =BCDBC" / %. ( B E /( E 1 / /B B 6B C / C A8 / B F7 ?<
  • ; )B E N A :FLE D 0 B 2)B E D 0 A :2A : T B C A F 0A:2. D C A A :T >]. D C A SBC ?>
  • F87 M FBEB 8B E 7 CB B "B C C B " B" $ B $ ZZ# EB 8 N E. B" A B A B B E A C D T 8)9 BD A A AB CDEFD D E C BEB BF %)5 ??
  • D CE C C CE ) E % A CE% / C EB B" C B 6BC = BA 1F CE C E EB B" C F BCA CE ) 1F CE C ( " C 7 E A CE .7 E A EB B" C CE%B B" EB B" C 8 B CE 6B CE EB B" C 8 / C EB B" D CE B A" CE EB B" C E CE ( " CE D %C E A C C CE DB E6B C CE F EB B" C ) B CE&" CE E CE )6 " 1F CE CL FCB C CE 8 B EB B" C BCD EB B" C ) E CB" E C7 BB A " & B EB B" C C CE BC CEB A / EB B" C )C 6 : CE6 CE BB B C CE ?A
  • B " D CE. " D CE: 8 B EB B" C 1FS C C C " T : 81 757 718[ (L7 - 8 B EB B" C D8 B EB B" C T *8 B EB B" C, ^ " D CE * ,-%C BC C B FS D8 B EB B" C *=&&1[7)$ B ,- ?G
  • E EB B" C BC / E $ CE5 %C E A C7 FC BA B "11E BAS DB B B 8 ( A "% CD B DB B" D& DB B" D ?;
  • : BC " /B C D &B C *&B C, BC E * E SBEB, D E EB B" C CE BC L BV " *%C SBEB, E V " A
  • < 6 A C 1(6 ! 1E 7%)B B C " 0 BC 2 0 CB B 29 C C AD B D!A E!F A C ! C !F A C!]B AC A ] %7 A D CE C C " F A C A
  • A
  • > 1 %! B B" !B ! B B" ! C EA C ! B B" ! D A A " &B C B %C E A C &B 7E BCD ED B ABC%C E A C 1 B6 E B %C E A C % 7E6C / C %B B" 7 B C ) / BA%C E A C B B C %C )CD%C E A C B ABC %C E C " B %C E A C BD CB D BC 6 : E A B%C E A C C7 B C " %C E A C B A( CA C . C) BC %C E A C) ( CA CDBCB C L )B C= E&L / C A
  • AB % $A & A B A B6 A "6 A D AA " /B B7DB". " BAF A<
  • B A B& B !!B AC A " " C DC 0C 2 K C !!A " " D!A !" " C !" C !C U O!F !C K D A BZ: O!F !C5 1 % EB C B B"" A C B C " CFC BA KC !!B AC A " " C D! B CD!DB F B AC A A[C KC A>
  • F FCBC C B DF BF ( C F BA CF A 6 A D D B FAB E )B E LEA E D ) E DA E ) E B A D : C B : C B C S AF 1 %CBD / C D CE $ B AC A ]$ AC A C B A DA $ BCA/BC =BCA/BC C F F C B =BCD A 8)9 B B" AC A B $ C EA C $ C F %C F F BC A )9 D / C A B BC C DF AA A : B CD B BC AC A A?
  • 6 A "( # C ?< F .F <%B B" C # C A K A B " B F A B F ?A E ^ U B F F 4 F : " C " C ^ U "ZZ F ? A E G? F4 A E F: A E ^ U F A ZZ? F C > F C >A E ^ U "ZZ D F% F : B / DF K A ! C! F ! F A ZZ ? ! C! F ! F A ZZ K A ! C! F ! F4 ! C! F ! F4 AA
  • F A EC D K ( F A! E K&B F A B A " /B " N "BD K DB S " A C C B FC BF B D B C/ N A K D B CQ AG
  • D C F A! E C DDB A) B * D C B ,K : C . [ =T. 0 2 C D 1 %C E EBC 3 N A B D FB B C B A /B C B D B C C D 1 %CK F A! EKK D B C A;
  • < 6 A D8 ( C E0E A 2F A C A B A AC A D G
  • > AA " /B B AA B B _B `! B B" !B B C B B E C C S B B" !B AA B B C CB AC A D C S AA C S %(1). [% 9 C_B `!F A! BC" ! C A ! C D G
  • ? 7DB" B AF A _B `! !7DB" B _B `! ! BC" ! C A !" C ! CBDA D" D D" CAB B # D D"9 C C F !B AC A BCD! C ! C # DD B C E CC A C CA G
  • A . " BAF B C ! CB /! C " 1 %$ A " D B C = K BAF BC" +) D " " K BAF " B " ! C D BC" K BAF !AB B! B K BAF ! C ! " "4 G
  • "$ " BAC " !!B AC A " " C DLB B !!/// C C" C /B NC C / A AC A C B C 8 C " A EB B C B B AC A D9 C B D AC A D : BB F $B BC $ NC D " > G<
  • ) B AB *E +$5 D B6 F :78B E AB D% / C G>
  • 5 D B!B TU C CC D *) D B ! "C :,! B TU B B BC!A TU D ! ! C !A F "!AB B TU AC AN 0!AB B2 D!A E TU ) E A! TU D ! D!!D TU D CBC D! C TU C!C TU A! F TU E A B A BAFA! A BCA TU ) BCA D! TU! D TU AC AN 0! D2 D!E A C TU D ! D!E A C G?
  • ! D!B TU B B A!F TU 8B E F BC B A AB D! TU " CB! TU 5! CBD / C TU AC A CBD / C SBC! F TU 8B E FCBC! C TU E B C 0! C2!:F TU 1 B !: CB F BC GA
  • !AB B!B C TU 8( CB!B TU B B!B C EB TU %C AB!FB TU 5 C 6B EB B" C!AB E B TU )B E )@ B!AB B TU AB B!A B TU &B B * Z C BA , C 0A D B 2! B TU /C BF B!D TU E AB B */ $ E $ F $ ,! C C TU % C D C C * C $ B "$ ,! C TU C AC A AB B BEB BF! D TU D AB B GG
  • 67 B !F7 D ! D! F%C E A F FD FA F AZZ F C BA[AF C G;
  • F :7 B ! D! C ! F :7 D ! D!F ! F :%C E A B BCD AB " E D A DE / CA C A DA AA " C D A B AC BA C E CD A E BC D B A B CDA C D D AA A D AC / [D A C CDD A ED B / AD " " C BA C B F C C /B C D : "D C F C / ;
  • < 77 B ! D! C !7 D !( ! C ! _F BCA` C ! E AC ! E A _F BCA` C ! D! ! _F BCA` ;
  • > 8B E AB D CE DB B" CE AC A ABAFA B A ;
  • > CE DB B" C7 B ! CBD / C !FB ! DA ! CE DB B" C!7 D ! D!F !%C E A : DB B" D CF A C CE A : C C D ;
  • > E A7 B ! D!E A!7 D ! D!F !%C E A L D D C D CDB D AA E ;<
  • > C A7 B ! BCA/BC !C !D C !7 D ! D!F !%C E A 0(BA 7 CB &B C2 BCA/BC ;>
  • >< A7 B ! D! A!7 D ! D!F !%C E A EB B" D B / C " 7 CB / 8 / C EB B" D CE ;?
  • > > BAFA7 B ! D! C !BAF!7 D ! F%C E A 7 CB / 0BAF2 DDB A ( D A F "" " B BF %B B" B ! B 0BAF 2 C A B ;A
  • >? B A7 B ! CBD / C !FB ! DA ! B A7 D ! D!F !%C E A %B B" B ! B B B AE C B 7 CB / %B B" EB B" C CE ;G
  • ? % / CA D BA D CE " B ;;
  • $ E $ CE C F D CE C1F CE " D CE C B " D CE7 A B / D CE C B " C / D CE
  • CE C F D CE C C CE ) E % A CE% / C EB B" C B 6BC = BA 1F CE C E EB B" C F BCA CE ) 1F CE C ( " C 7 E A CE .7 E A EB B" C CE%B B" EB B" C 8 B CE 6B CE EB B" C 8 / C EB B" D CE B A" CE EB B" C E CE ( " CE D %C E A C C CE DB E6B C CE F EB B" C ) B CE&" CE E CE )6 " 1F CE CL FCB C CE 8 B EB B" C BCD EB B" C ) E CB" E C7 BB A " & B EB B" C C CE BC CEB A / EB B" C )C 6 : CE6 CE BB B C CE
  • D B CBD / C !FB ! CE !SBEB! D!B AC A! CE C >E O G> E DB B" C ; 9 Z
  • 1F CE " D CE C& " BA D
  • " B 5 A D CE CN %7) K BAF "C D[ CE C D ? ? >< G BA A G D[ CE C & C K BAF " B "C 0? ,2)!% / CEB B" C CE * ? , F D A7! ( " C * ? , CE B D AC A AC A ? .E7! ( " C * ? , )B B B T )B B E % F TB C B T C B 8BD T / C T7! BC EB B" C CE * ? , 6 A " BC BF B E7!B CE * ? , B CE C " 8 D / A / C C7! E EB B" C* ? , " B " A a B T D T ! ? T [. T T ! ! BET !7! ( " C * ? , E B" BB " B " A B7! ( " C * ? , B 5 C/BCA " B " A B7! ( " C * ? , )B B B T )B B E % F TC C B T D&7! ( " C * ? , )B B B T )B B E % F TC C B T D&)! C "* ? , EB C7 B B C E B" / B T7! E EB B" C* ? , BC C B AC A C D A B C FC BA B D B AC A C E A C A / BA ! ) / BA( E C AT AT " A Ta >$ $ b7!( E C D* ? , 8 C E C "B!B A /EB B" C* ? , C 4 D : C A <
  • A D CC C " CE CB 5 " C B F B B E B BCD B / A" B A FB / / A /).E% 15 (L7 CB 5 " CZ &B C : ;?F; 4T $ T* $ ,$ 4 T* <G $ G ,$ A 6 A "T $ A ) C "T $ EB AB ` BD T D B AC A B C! D B AC A B C &B C T : ; <G$ A T? _ BAT $ BEB BF T $ # AT ` C B EB T $ . T $ A T?$ B T CDB T $ _<G :G <G ` _<G :G <G `$ C 4 & T : $ A# # D T> A>? >
  • B " D CE. " D CE: 8 B EB B" C 1FS C C C " T : 81 757 718[ (L7 - 8 B EB B" C D8 B EB B" C T *8 B EB B" C, ^ " D CE * ,-%C BC C B FS D8 B EB B" C *=&&1[7)$ B ,- ?
  • < 7 A B / D CEC 1 % C $C 7D C B A B D A . C E C " C " 7DB" : (B B &B :6 B $ N A D AB / C A
  • < E EB B" C BC / E $ CE5 %C E A C7 FC BA B "11E BAS DB B B 8 ( A "% CD B DB B" D& DB B" D G
  • : BC " /B C D &B C *&B C, BC E * E SBEB, D E EB B" C CE BC L BV " *%C SBEB, E V " ;
  • < %B B" EB B" C<> 97 B B ! C D EB% CD7 C *B 7 ( E C SBEB, B AF E EB B" C
  • < B A / EB B" CEB C BAB A / DB BBB B C B A "1C B5&B C "7 E DB B" D
  • << 8 B EB B" C B8 B A B FB * 8 B %B C SBEB,
  • < > % / C EB B" CBB6C "&
  • < ? 8 / C EB B" D CE B 0 A2 ! D! A7 CB " CB C ")8 <
  • <A E CEE !. D5 CDB. 6 DB CB"166 >
  • <G & B EB B" CEB B" B C EA C" 6 %C E A C*,%C : D B C&B / B ?
  • <; B 6BC EB B" C: B A ! B7 E F( E B B FB B FB C B DB B" C A
  • < 6B EB B" C BF ! A BF CB C DB B" DFB 8 /*, G
  • > C B " C / D CE AA C ACBD / C !FB ! CE !SBEB! D!B AC A! CE C!=BE D CE C SBEB ZC " C CE) BCA/BC %7 CB: C " CBD / C !FB ! C !SBEB!B AC A! !_ CE C` B A B B E 0AC E C2 A C " F877D D C B C CB AC E C C B B B B B CEEB A C B / )9 ;
  • > 1 C CE SBEBpackage com.android.server;import android.content.Context;import android.os.Handler;import android.os.IOpersysService;import android.os.Looper;import android.os.Message;import android.os.Process;import android.util.Log;public class OpersysService extends IOpersysService.Stub { private static final String TAG = "OpersysService"; private OpersysWorkerThread mWorker; private OpersysWorkerHandler mHandler; private Context mContext; public OpersysService(Context context) { super(); mContext = context; mWorker = new OpersysWorkerThread("OpersysServiceWorker"); mWorker.start(); Log.i(TAG, "Spawned worker thread"); } public void setValue(int val) { Log.i(TAG, "setValue " + val); Message msg = Message.obtain(); msg.what = OpersysWorkerHandler.MESSAGE_SET; msg.arg1 = val; mHandler.sendMessage(msg); }
  • private class OpersysWorkerThread extends Thread{ public OpersysWorkerThread(String name) { super(name); } public void run() { Looper.prepare(); mHandler = new OpersysWorkerHandler(); Looper.loop(); } } private class OpersysWorkerHandler extends Handler { private static final int MESSAGE_SET = 0; @Override public void handleMessage(Message msg) { try { if (msg.what == MESSAGE_SET) { Log.i(TAG, "set message received: " + msg.arg1); } } catch (Exception e) { // Log, dont crash! Log.e(TAG, "Exception in OpersysWorkerHandler.handleMessage:", e); } } }}
  • > 71 C CE BApackage android.os;interface IOpersysService {/*** {@hide}*/void setValue(int val);}
  • > CBD / C !FB ! AC A D C !SBEB!B AC A! !7% / CEB B" C B A ^ C !SBEB!B AC A! !71 C CE BA ^ C !SBEB!B AC A! !7( D B FB B A ^
  • >< D CE C SBEB A E B F : 1%( 3 [ (L7 try { Slog.i(TAG, "Opersys Service"); ServiceManager.addService(“opersys”, new OpersysService(context)); } catch (Throwable e) { Slog.e(TAG, "Failure starting OpersysService Service", e); }... <
  • >> = CE C SBEBpackage com.opersys.helloserver;import android.app.Activity;import android.os.Bundle;import android.os.ServiceManager;import android.os.IOpersysService;import android.util.Log;public class HelloServer extends Activity { private static final String DTAG = "HelloServer"; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); IOpersysService om =IOpersysService.Stub.asInterface(ServiceManager.getService("opersys")); try { Log.d(DTAG, "Going to call service"); om.setValue(20); Log.d(DTAG, "Service called succesfully"); } catch (Exception e) { Log.d(DTAG, "FAILED to call service"); e.printStackTrace(); } } >}
  • , E BA - ! CBD / C !FB ! C ! ! CBD / C !FB ! CE !SBEB! 1 % C EA A & ! CBD / C !FB ! CE !S ! ! BCA/BC ! F BCA/BC ! !A E !_E 8.5 `!_)L7 `EB C EA A ! A ! D B C!EB 9 C CD AEB C EA A C! ?
  • _B `! BCA/BC ! F BCA/BC ! A ! BCA/BC " " C_B `! BCA/BC !C ! A ! ! C:BD _B `!A E ! BD "! C ! FB A F BD CB F " F C. " F87 B A
  • B F87public class HelloJni extends Activity{ /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); /* Create a TextView and set its content. * the text is retrieved by calling a native * function. */ TextView tv = new TextView(this); tv.setText( stringFromJNI() + " " + pid() ); setContentView(tv); } /* A native method that is implemented by the * hello-jni native library, which is packaged * with this application. */ public native String stringFromJNI();... /* this is used to load the hello-jni library on application * startup. The library has already been unpacked into * /data/data/com.example.HelloJni/lib/libhello-jni.so at * installation time by the package manager. */ static { System.loadLibrary("hello-jni"); }} G
  • F87jstringJava_com_example_hellojni_HelloJni_stringFromJNI( JNIEnv* env, jobject thiz ){ return (*env)->NewStringUTF(env, "Hello from JNI !");} ;
  • AB . ,A D& B B A DB AC A ] D 4B
  • & B B A D_B `! CBD / C !FB ! DA TU B E DA B A AB D ! C TU B AC A ] B A D B AC A ] !AB B TU 5 B A A !"CB TU ) Q ( A C C ! A TU 0 2 A ! C TU C C ! F TU 0 2 FCBC ! B TU & B C EA C !D A B TU B" C " $ A $ ! B E TU 8B E A C D CBD / C D ! F : TU 6 F : ! " TU C& FCBC B A SBEB A ! B B" TU / C B B" * B 6BC, ! CE TU D CE C ! TU % C B A B ! TU / C *BB $ B A $ , !E TU ( % Q 7% CB !E TU L%8 B !/ TU B DB B" C$ D C$
  • B AC A ]accessibilityservice content hardware pim speechaccounts database inputmethodservice preference testannotation ddm net provider textapp debug nfc security utilappwidget emoji os server viewbluetooth gesture service webkit widget
  • D 4B: A " %76 C B FBC8 / C%C BA A B6C / CF DBCDB C EA C D 4B D
  • : A " %7 M D CECBD / C !FB ! C !SBEB!B AC A! B ! : 7D SBEB ! : SBEB !1 C EB B" C SBEB <
  • B ! : 7D SBEB...import android.os.IOpersysService;import android.os.OpersysManager;... private DownloadManager mDownloadManager = null; private NfcManager mNfcManager = null; private OpersysManager mOpersysManager = null;... return getDownloadManager(); } else if (NFC_SERVICE.equals(name)) { return getNfcManager(); } else if (OPERSYS_SERVICE.equals(name)) { return getOpersysManager(); }... >
  • private OpersysManager getOpersysManager() { synchronized (mSync) { if (mOpersysManager == null) { IBinder b = ServiceManager.getService(OPERSYS_SERVICE); IOpersysService service = IOpersysService.Stub.asInterface(b); mOpersysManager = new OpersysManager(service); } } return mOpersysManager;} ?
  • ! : SBEB... /** * Use with {@link #getSystemService} to retrieve a * {@link android.nfc.NfcManager} for using NFC. * * @see #getSystemService */ public static final String NFC_SERVICE = "nfc"; /** The Opersys service **/ public static final String OPERSYS_SERVICE = "opersys";... A
  • !1 C EB B" C SBEBpackage android.os;import android.os.IOpersysServicepublic class OpersysManager{ public void setValue(int value) { try { mService.setValue(value); } catch (RemoteException e) { } } public OpersysManager(IOpersysService service) { mService = service; } IOpersysService mService;} G
  • 6 C C B :<G DB"7 B DB" DB" K A B " B DB" DB" E C DB" C CDB K E C C S " C C E C DB" >?> CDB K C"F >?> X C CU C >?>BC DB" B K B F B B C >?> ;
  • B FBC& B CBD / C !FB ! B B" ! D.7! C ! D!B AC A! D ! B FBC& C D CE 7 * ,) BF / D CE 7 L F *0_7 18[8 E`c$ B ,- <
  • < 8 / C& B C FB B CBD / C !FB ! C !C !C !:D !B :D ) E B %(1). [ 1%3[57& TE A C!B D ! !B :D D! !B :D ) BD D! !B :D5 CDB XB BCC CTc E F . c D Tc c D Tc ? c B Tc /B E C BD Dc CTc c CE CTc]c B / CATc c C : Tc ? >> ?> > c C TcG G c DD Tc !! ? >> A< G<! CE !DD c !U <
  • > %C BA A B F A! BC" ! C A%(1). [% 9 C T ^ F B ^ D B AC A B C EA C^ D B AC A B C E A C :D ^ C ^ C S ^ C B [ [AD CB ^ AB E ED ^ A :A ^ <
  • ? 6C / CF DBC B B" !B !6C / C!C !EB ! C " :DXH 6 DBC UX C " BCCB BD TcF DBC cU X DUC " X! DU X DU !!/// " " D!X! DU X DU3B HX! DU X DU !!/// B D!X! DU X DUE 8X! DU X DU !!/// D D!X! DU X DUE B X! DU X DU !!/// D B D!X! DU <
  • A DB C EA C D 4B B B" !B !DB !C !:D ! C E A C :DXH CDB EBC B U X C E A C ATc"DB c BF TcCDB c A DB Tc"DB DcU X D " C Tc DB Z Z !! DB "DB Dc C BD TcK DB c!U X " " C Tc D Z Z !! D "DB Dc C BD TcK DB c!U X! C E A CU X C E A C ATc" " DB c BF TcC " EB c A DB Tc" " DB DcU X D " C Tc DB Z Z !! DB " " DB Dc C BD TcK DB c!U X " " C Tc D Z Z !! D " " DB Dc C BD TcK DB c!U X! C E A CU XH DD . C EA C U X C E A C ATcB Dc BF Tc 7Ec A DB TcB D DcU X D " C Tc DB !! DB B D Dc BF Tc7E %c C BD TcK DB c!U X " " C Tc D !! D B D D >GAc C BD TcK DB c!U X! C E A CU X C E A C ATcB c BF Tc 1&c A DB TcB DcU X D " C Tc DB !! DB B Dc BF Tc7E %c C BD TcK DB c!U X " " C Tc D !! D B D >GAc C BD TcK DB c!U X! C E A CU <<
  • G DCBD / C !FB ! C !C !C !EB ! :D <>
  • EA /AA" F B E BE(B B )9 " CB8)9 " CB C B "B C A E B <?
  • (B B)9 %C E A " C C B BD C : C B A E C B C D A A! D AC A %78)9 BD B )9 CB B D C A E B CA BE A BE " B F BC B C D BC C F A BCBD C A C B B : F BA " F <A
  • )9 " CB6 A " )9 K F A! E K A " K DB A7 %7 D A A$ A F C DB K DB AB B& B _B `! ! ! : :G?! A !. "B D )9 UB A / U%C C U AC A U2 )9 & B 2 UB A / Uc AC A )9 B A L) EB B" Cc Uc7 B A %B B" c Uc. AB c <G
  • 8)9 " CB6 AK A A !F A!K : C 8)(17)[8)9[(11 T_B `! AK !DB C BK !DB C B7E%1( 8 B (878C HH C A " CB B 8)9 C B B B" C D CB C / " B CD : :G? C @ (E&3 &18C B A DB B L( & =1.( BA B CDB 7 B A B $ B C BA A !)L&1%E8 @ B C EA C / A B D C B C C /B A B _ !8` <;
  • < C B "B C A E B AEE AA"+ C C EB BF B !! D C B" C"! C S ! C) / BA $ B $F A $ B $ D C 01E " FB A C F $" F B A " F C (E$ 6 B $ E7% $ % / C% $ =$ d5B C / DB B A >
  • E DB C / " BC B A.F CA C C " "B/ : B DB F E F C >A E. 0 A B " B 2 " >
  • ) / BA B A : CB Ka%(F(11 b!F A " C C$ cd crosstool-ng-1.10.0/$ ./configure6 AB A B C "$ make$ make install " C C$ cd ${PRJROOT}/build-tools$ ct-ng menuconfig >
  • Options: %B U%C :AC C Ka%(57@b!Ka [ (C b BC" UBC C / C 1 U BC" 1 : FCBC U FCBC " F FCBC U: CB B" .[51( 753[ 1.( ) F " B "AF Q CB6 A B$ ct-ng build >
  • A B B"B / E $ B AC A D B F %C "CBD C A AC A B D B F ) ) D * )), M % D B F * ,ME B DB AC A E C B / )) Q %BC 1 % ( C D ". 6 E C B B AA E 6B A F. ( EBC B BC" ( )6 %C E A C C F F B B 4 A B A! C FB C " ><
  • >>
  • ( C 4 B " @E& B A C WB AC A D6 A " K F A! E K DB&B " K A ! ! : :G?!F ! K ! K [ U K [ U >?
  • . "K [ U B& B *G B, " B C(LE% C CDB C AC AFBEBK ! BC B >A
  • C B E C A " B C%B CD %7)B E LE%B CD )B B E A%B CD 7%B CD % CD%B CD ( C >G
  • BBC D B" D CW C D >;
  • / A" D D " C B A B C DC " N AC A 0) E C A 2 B A E C B AC A DA CF A A C B ?