Slide 1

Slide 1 text

Going  Mobile  with  Android   Mustafa  Ali   Android  Technical  Lead,  Mutual  Mobile   @mustafa01ali  

Slide 2

Slide 2 text

*  Linux  based  operating  system  for  mobile  devices   *  Initially  developed  by  Android  Inc.,  later  bought  by   Google   *  Launched  in  2007   *  Managed  by  the  Open  Handset  Alliance   Android  

Slide 3

Slide 3 text

Global  Market  share   ~80%   Source:  IDC  

Slide 4

Slide 4 text

Devices  activated   900  Million     Source:  Google  

Slide 5

Slide 5 text

Activations  per  day   1.5  Million   Source:  Google  

Slide 6

Slide 6 text

Applications  on  Google  Play   1  Million     Source:  Google  

Slide 7

Slide 7 text

Application  downloads   50  Billion     Source:  Google  

Slide 8

Slide 8 text

Phones  &  Tablets  

Slide 9

Slide 9 text

Cameras  

Slide 10

Slide 10 text

Watches  

Slide 11

Slide 11 text

Glass  

Slide 12

Slide 12 text

Refrigerators  

Slide 13

Slide 13 text

Coffee  Machines  

Slide 14

Slide 14 text

Microwave  Ovens  

Slide 15

Slide 15 text

Washing  Machines  

Slide 16

Slide 16 text

Apache  License  2.0,  GNU  GPL  v2   Open  Source  

Slide 17

Slide 17 text

Android  Architecture  

Slide 18

Slide 18 text

*  Operating  System   *  Windows   *  OS  X   *  Linux   *  Android!   *  IDE   *  Eclipse   *  Android  Studio   *  Programming  Language   *  Java   *  C,  C++  using  the  NDK   Development  Environment  

Slide 19

Slide 19 text

*  Building   *  Ant   *  Gradle   *  Debugging  and  Testing   *  Real  devices   *  Android  Emulator  /  Genymotion   *  Remote  testing  via  Device  Anywhere,  TestDroid,  etc.   Development  Environment  

Slide 20

Slide 20 text

Getting  Started  

Slide 21

Slide 21 text

Project  Structure  

Slide 22

Slide 22 text

*  Activities   *  Services   *  Intents  and  Intent  Filters   *  Content  Providers     Building  Blocks  

Slide 23

Slide 23 text

*  Application  component  that  provides  a  screen  with   which  users  can  interact   *  Each  activity  is  given  a  window  to  draw  its  user   interface   *  Navigating  between  activities  is  managed  by  the   “Back  Stack”   *  Activities  can  send  and  receive  data  to  and  from  other   activities   Activity  

Slide 24

Slide 24 text

Activity  Lifecycle  

Slide 25

Slide 25 text

*  Action  Bar   *  Layouts   *  Input  Controls   User  Interface  

Slide 26

Slide 26 text

Action  Bar  

Slide 27

Slide 27 text

*  Dedicated  piece  of  real  estate  at  the  top  of  each   screen  that  is  generally  persistent  throughout  the  app   *  Provides  consistent  navigation  across  different   applications   *  Makes  key  actions  for  the  activity  prominent  and   accessible  to  the  user  in  a  predictable  way   *  Introduced  in  Android  3.0  (API  level  11)     Action  Bar  

Slide 28

Slide 28 text

*  Action  Bar   *  Layouts   *  Widgets   Creating  user  interfaces  

Slide 29

Slide 29 text

*  Define  the  visual  structure  for  a  user  interface   *  Declared  in  XML   *  Can  also  be  created  programmatically     Layouts  

Slide 30

Slide 30 text

*  Action  Bar   *  Layouts   *  Input  Controls   Creating  user  interfaces  

Slide 31

Slide 31 text

Input  Controls  

Slide 32

Slide 32 text

*  Android  automatically  adapts  your  layout  for  you   *  Gives  you  the  flexibility  to  have  a  different  layouts  as   well   1.  Create  a  folder  layout-­‐land   2.  Name  of  the  layout  file  should  be  the  same   3.  Ids  of  the  views  in  the  layout  files  should  be  the  same   Supporting  Multiple  Orientations  

Slide 33

Slide 33 text

Questions?  

Slide 34

Slide 34 text

*  Android  developer  site  -­‐  developer.android.com   *  Android  Open  Source  Project  (AOSP)   *  StackOverflow     Need  help?  

Slide 35

Slide 35 text

*  Source  Code  -­‐  https://github.com/themvrck/GDG   *  Facebook  –  www.facebook.com/Hydroid.GDG   *  Twitter  -­‐  https://twitter.com/GDGHydroid   *  G+  -­‐   https://plus.google.com/u/0/communities/ 113380553504762597608   Links  

Slide 36

Slide 36 text

Happy  Coding!