SlideShare uma empresa Scribd logo
1 de 21
Applico…
Android...
…and All the Above
Agenda
 Applico: Who We Are
 Android – What is it?
 Android Classic
 Android Tablet
 Android Now - ICS
 Android Compatibility
 Future of Android
Applico

 Headquartered      in Manhattan (23rd and
  3rd), with offices in LA, Chicago and
  Boston (2012)
 We make mobile apps … and more!
 Technical footprints come from the DoD
 We don’t just make apps, we make
  systems.
Android – What is it?

 Technology  stack that includes an
  operating system and a set of APIs
 Based on the Linux kernel and Java.
  Supports SQLite for data storage
 Supports various media formats
 Integrated browser based on WebKit …..
  And More!
Android 1.6 – 2.X
   Classic Android (< 3.0)
   Each Screen (Activity) has its own activity
    lifecycle
       onCreate
       onRestart
       onStart
       onResume
       onPause
       onStop
       onDestroy
Android 1.6 – 2.X
 Tomaximize screen real-
 estate, navigation
 elements were off screen
    Menu Button
    Gesture’s are rarely used
    The back button was
     used to navigate
     throughout the app
Android 1.6 – 2.X
   Rotation changes had the potential to kill
    long running processes.
   3D Animations (for the most part) were
    dedicated tasks for OpenGL
   There is no support for hardware acceleration
   Devices typically fell into 4 sizes and 3
    resolutions
       Small, Normal, Large, X-large (2.3)
       LDPI, MDPI, HDPI
Honeycomb
   Honeycomb (3.x) is targeted at just tablets
   Each Activity still has its own lifecycle, but that
    activity now contains elements (Fragments)
    each with their own lifecycles.
       onAttach
       onCreate
       onCreateView
       onDestroyView
       onDetach
Honeycomb
     Pre-Honeycomb                  Honeycomb
         Activity                     Activity
                            Fragment A     Fragment B

I have one model view and   I have one     I have one
         controller!        model view     model view
                                and            and
                             controller!    controller!
Honeycomb
   How can you add fragments to your activity?
       Programmatically
            FragmentTransaction ft =
            getFragmentManager().beginTransaction();
            FooFragment frag = new Fragment();
            ft.add(id, frag);
            Ft.commit;
       Through Layouts
           <fragment android:name=“com.foo.FooFragment”
                      android:Id=“@+id/foo”
                      android:layout_width=“wrap_content”
                      android:layout_height=“wrap_content”/>
   Don’t think of Fragments as UI elements!
Honeycomb
 Nomore menu
 options!
    Hardware button is
     being phased out
    All navigation is being
     moved to an on
     screen model
      System Bar
      Action Bar
Honeycomb
   New Animation library Renderscript
       Renderscript is based on C. Provides some performance
        gains over OpenGL
       Usability, while it is a set of new APIs it does simply
        development and makes the initialization of rendering
        easier
   Support for large heap. Devices can allocate up to
    256MBs to the heap compared to 2.X which is 16MB
   Multiple Screen Sizes are now based on width:
       Before: res/layout-small, res/layout-normal, res/layout-
        large
       Now: We use minimum screen
        width, res/sw600dp, res/sw800dp
       While it’s not idea it gives developers more control when
        dealing with OEMs
Ice Cream Sandwich – 4.0
   Ice Cream Sandwich!!!!
   It’s a unified version of the OS that combines
    Honeycomb and 2.X
       Fragments and Loaders
       On Screen Navigation – Good-Bye Hardware
        Buttons!
   Build once for phones and tablets, no need for
    multiple APKs.
   Also adds facial unlock, NFC, camera
    enhancements, a social networking api, an official
    calendar API (Hooray!) and much more
Ice Cream Sandwich
   How do I check for dual pane mode?
       Add a view to your layout!
     If the View is null, start a new activity, otherwise show the
        fragment
     View detailsFrame =
     getActivity().findViewById(R.id.details);
     if(detailsFrame != null){
           mDualPane = true;
     }
     If(mDualPane){
           showFragment(…use the fragment manager)
     }else{
           startActivity();
     }
Ice Cream Sandwich
Compatibility
   How do I target the largest audience?
   Android penetration of Feb 1, 2012
       Android 4.0 : 1%
       Android 3.0 : 3.5%
       Android 2.2 – 2.X: 86.4%
    *Source: http://developer.android.com/resources/dashboard/platform-versions.html

   Unless you need specific 3.0+ API support
    target 2.2+!!! (You can still turn on large heap
    and hardware acceleration in the manifest
    file, older versions will still run and ignore it!)
Compatibility
   Why?
       There are a lot of nice APIs available for 3.0+,
        but the biggest changes to prepare for are the
        architectural and navigational ones.
       85%+ is using 2.2!
   How can I make legacy apps feel
    ICS/Honeycomb like and use the new design
    patterns?
       Compatibility packages!
       Support for Android 1.6+
Compatibility
   What’s in it?
       Official Android Package supports Fragments!
       ActionBarSherlock is an open source extension to
        the compatibility package!
          *source: http://actionbarsherlock.com/
   How do I use it?
       The official support package is a jar that you can
        include in your project
       The ActionBarSherlock is a library project
   Using these libraries will help prepare you to
    officially support ICS while not having to design
    two apps and maintain two apk’s.
Future of Android
 ICS will penetrate the market slowly.
  Need for multiple APKs will dwindle
 Ultimately I would bet on the back button
  disappearing (usability issues)
 More NFC!
 Integration with Android@Home
Questions?

Mais conteúdo relacionado

Mais procurados

Eclipse & android setup
Eclipse & android setupEclipse & android setup
Eclipse & android setup
China Bigs
 
iPhone/iPad Development with Titanium
iPhone/iPad Development with TitaniumiPhone/iPad Development with Titanium
iPhone/iPad Development with Titanium
Axway Appcelerator
 
Android SDK and PhoneGap
Android SDK and PhoneGapAndroid SDK and PhoneGap
Android SDK and PhoneGap
Doncho Minkov
 

Mais procurados (20)

Introduction_to_android_and_android_studio
Introduction_to_android_and_android_studioIntroduction_to_android_and_android_studio
Introduction_to_android_and_android_studio
 
android studio
 android studio android studio
android studio
 
Eclipse & android setup
Eclipse & android setupEclipse & android setup
Eclipse & android setup
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming Basics
 
Android development session 5 - Debug android studio
Android development   session 5 - Debug android studioAndroid development   session 5 - Debug android studio
Android development session 5 - Debug android studio
 
Flutter for web
Flutter for webFlutter for web
Flutter for web
 
React Native Expo
React Native ExpoReact Native Expo
React Native Expo
 
Vodafone Mobile Widgets Workshop
Vodafone Mobile Widgets WorkshopVodafone Mobile Widgets Workshop
Vodafone Mobile Widgets Workshop
 
Android study jams 2021 [collab] [master]
Android study jams 2021 [collab] [master]Android study jams 2021 [collab] [master]
Android study jams 2021 [collab] [master]
 
HTML5 Game Development frameworks overview
HTML5 Game Development frameworks overviewHTML5 Game Development frameworks overview
HTML5 Game Development frameworks overview
 
Developing better debug_components
Developing better debug_componentsDeveloping better debug_components
Developing better debug_components
 
Android studio
Android studioAndroid studio
Android studio
 
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CA
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CAAppcelerator iPhone/iPad Dev Con 2010 San Diego, CA
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CA
 
iPhone/iPad Development with Titanium
iPhone/iPad Development with TitaniumiPhone/iPad Development with Titanium
iPhone/iPad Development with Titanium
 
Android SDK and PhoneGap
Android SDK and PhoneGapAndroid SDK and PhoneGap
Android SDK and PhoneGap
 
React-Native-N3XTCODER-Arya-Workshop-April-2016
React-Native-N3XTCODER-Arya-Workshop-April-2016React-Native-N3XTCODER-Arya-Workshop-April-2016
React-Native-N3XTCODER-Arya-Workshop-April-2016
 
Anveshan android
Anveshan androidAnveshan android
Anveshan android
 
Android tutorial1
Android tutorial1Android tutorial1
Android tutorial1
 
Parse par Nicolas Lauquin
Parse par Nicolas LauquinParse par Nicolas Lauquin
Parse par Nicolas Lauquin
 
Automating Your Way out of the Dark Ages: Our Experience with (And Without) P...
Automating Your Way out of the Dark Ages: Our Experience with (And Without) P...Automating Your Way out of the Dark Ages: Our Experience with (And Without) P...
Automating Your Way out of the Dark Ages: Our Experience with (And Without) P...
 

Semelhante a Applico Android Info Session at Columbia University

Build Mobile Application In Android
Build Mobile Application In AndroidBuild Mobile Application In Android
Build Mobile Application In Android
dnnddane
 
Android Development in a Nutshell
Android Development in a NutshellAndroid Development in a Nutshell
Android Development in a Nutshell
Aleix Solé
 

Semelhante a Applico Android Info Session at Columbia University (20)

Android 3.1 - Portland Code Camp 2011
Android 3.1 - Portland Code Camp 2011Android 3.1 - Portland Code Camp 2011
Android 3.1 - Portland Code Camp 2011
 
Android 3.0 Portland Java User Group 2011-03-15
Android 3.0 Portland Java User Group 2011-03-15Android 3.0 Portland Java User Group 2011-03-15
Android 3.0 Portland Java User Group 2011-03-15
 
PPT Companion to Android
PPT Companion to AndroidPPT Companion to Android
PPT Companion to Android
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application Development
 
What's new in android 4.4 - Romain Guy & Chet Haase
What's new in android 4.4 - Romain Guy & Chet HaaseWhat's new in android 4.4 - Romain Guy & Chet Haase
What's new in android 4.4 - Romain Guy & Chet Haase
 
Develop an app for Windows 8 using HTML5
Develop an app for Windows 8 using HTML5Develop an app for Windows 8 using HTML5
Develop an app for Windows 8 using HTML5
 
Building Cross-Platform Mobile Apps
Building Cross-Platform Mobile AppsBuilding Cross-Platform Mobile Apps
Building Cross-Platform Mobile Apps
 
Introduction to Android App Development
Introduction to Android App DevelopmentIntroduction to Android App Development
Introduction to Android App Development
 
Build Mobile Application In Android
Build Mobile Application In AndroidBuild Mobile Application In Android
Build Mobile Application In Android
 
Android Introduction on Java Forum Stuttgart 11
Android Introduction on Java Forum Stuttgart 11 Android Introduction on Java Forum Stuttgart 11
Android Introduction on Java Forum Stuttgart 11
 
Intro to Android Programming
Intro to Android ProgrammingIntro to Android Programming
Intro to Android Programming
 
Designing Apps for the Motorola XOOM
Designing Apps for the Motorola XOOM Designing Apps for the Motorola XOOM
Designing Apps for the Motorola XOOM
 
Android architecture
Android architectureAndroid architecture
Android architecture
 
Android In A Nutshell
Android In A NutshellAndroid In A Nutshell
Android In A Nutshell
 
Android - Open Source Bridge 2011
Android - Open Source Bridge 2011Android - Open Source Bridge 2011
Android - Open Source Bridge 2011
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015
 
Android Development in a Nutshell
Android Development in a NutshellAndroid Development in a Nutshell
Android Development in a Nutshell
 
Android overview
Android overviewAndroid overview
Android overview
 
Top Ten Tips for HTML5/Mobile Web Development
Top Ten Tips for HTML5/Mobile Web DevelopmentTop Ten Tips for HTML5/Mobile Web Development
Top Ten Tips for HTML5/Mobile Web Development
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 

Applico Android Info Session at Columbia University

  • 2. Agenda  Applico: Who We Are  Android – What is it?  Android Classic  Android Tablet  Android Now - ICS  Android Compatibility  Future of Android
  • 3. Applico  Headquartered in Manhattan (23rd and 3rd), with offices in LA, Chicago and Boston (2012)  We make mobile apps … and more!  Technical footprints come from the DoD  We don’t just make apps, we make systems.
  • 4. Android – What is it?  Technology stack that includes an operating system and a set of APIs  Based on the Linux kernel and Java. Supports SQLite for data storage  Supports various media formats  Integrated browser based on WebKit ….. And More!
  • 5. Android 1.6 – 2.X  Classic Android (< 3.0)  Each Screen (Activity) has its own activity lifecycle  onCreate  onRestart  onStart  onResume  onPause  onStop  onDestroy
  • 6. Android 1.6 – 2.X  Tomaximize screen real- estate, navigation elements were off screen  Menu Button  Gesture’s are rarely used  The back button was used to navigate throughout the app
  • 7. Android 1.6 – 2.X  Rotation changes had the potential to kill long running processes.  3D Animations (for the most part) were dedicated tasks for OpenGL  There is no support for hardware acceleration  Devices typically fell into 4 sizes and 3 resolutions  Small, Normal, Large, X-large (2.3)  LDPI, MDPI, HDPI
  • 8. Honeycomb  Honeycomb (3.x) is targeted at just tablets  Each Activity still has its own lifecycle, but that activity now contains elements (Fragments) each with their own lifecycles.  onAttach  onCreate  onCreateView  onDestroyView  onDetach
  • 9. Honeycomb Pre-Honeycomb Honeycomb Activity Activity Fragment A Fragment B I have one model view and I have one I have one controller! model view model view and and controller! controller!
  • 10. Honeycomb  How can you add fragments to your activity?  Programmatically FragmentTransaction ft = getFragmentManager().beginTransaction(); FooFragment frag = new Fragment(); ft.add(id, frag); Ft.commit;  Through Layouts  <fragment android:name=“com.foo.FooFragment” android:Id=“@+id/foo” android:layout_width=“wrap_content” android:layout_height=“wrap_content”/>  Don’t think of Fragments as UI elements!
  • 11. Honeycomb  Nomore menu options!  Hardware button is being phased out  All navigation is being moved to an on screen model  System Bar  Action Bar
  • 12. Honeycomb  New Animation library Renderscript  Renderscript is based on C. Provides some performance gains over OpenGL  Usability, while it is a set of new APIs it does simply development and makes the initialization of rendering easier  Support for large heap. Devices can allocate up to 256MBs to the heap compared to 2.X which is 16MB  Multiple Screen Sizes are now based on width:  Before: res/layout-small, res/layout-normal, res/layout- large  Now: We use minimum screen width, res/sw600dp, res/sw800dp  While it’s not idea it gives developers more control when dealing with OEMs
  • 13. Ice Cream Sandwich – 4.0  Ice Cream Sandwich!!!!  It’s a unified version of the OS that combines Honeycomb and 2.X  Fragments and Loaders  On Screen Navigation – Good-Bye Hardware Buttons!  Build once for phones and tablets, no need for multiple APKs.  Also adds facial unlock, NFC, camera enhancements, a social networking api, an official calendar API (Hooray!) and much more
  • 14. Ice Cream Sandwich  How do I check for dual pane mode?  Add a view to your layout!  If the View is null, start a new activity, otherwise show the fragment View detailsFrame = getActivity().findViewById(R.id.details); if(detailsFrame != null){ mDualPane = true; } If(mDualPane){ showFragment(…use the fragment manager) }else{ startActivity(); }
  • 16.
  • 17. Compatibility  How do I target the largest audience?  Android penetration of Feb 1, 2012  Android 4.0 : 1%  Android 3.0 : 3.5%  Android 2.2 – 2.X: 86.4% *Source: http://developer.android.com/resources/dashboard/platform-versions.html  Unless you need specific 3.0+ API support target 2.2+!!! (You can still turn on large heap and hardware acceleration in the manifest file, older versions will still run and ignore it!)
  • 18. Compatibility  Why?  There are a lot of nice APIs available for 3.0+, but the biggest changes to prepare for are the architectural and navigational ones.  85%+ is using 2.2!  How can I make legacy apps feel ICS/Honeycomb like and use the new design patterns?  Compatibility packages!  Support for Android 1.6+
  • 19. Compatibility  What’s in it?  Official Android Package supports Fragments!  ActionBarSherlock is an open source extension to the compatibility package! *source: http://actionbarsherlock.com/  How do I use it?  The official support package is a jar that you can include in your project  The ActionBarSherlock is a library project  Using these libraries will help prepare you to officially support ICS while not having to design two apps and maintain two apk’s.
  • 20. Future of Android  ICS will penetrate the market slowly. Need for multiple APKs will dwindle  Ultimately I would bet on the back button disappearing (usability issues)  More NFC!  Integration with Android@Home