SlideShare une entreprise Scribd logo
1  sur  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?

Contenu connexe

Tendances

Introduction_to_android_and_android_studio
Introduction_to_android_and_android_studioIntroduction_to_android_and_android_studio
Introduction_to_android_and_android_studioAbdul Basit
 
Eclipse & android setup
Eclipse & android setupEclipse & android setup
Eclipse & android setupChina Bigs
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming BasicsEueung Mulyana
 
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 studioFarabi Technology Middle East
 
Vodafone Mobile Widgets Workshop
Vodafone Mobile Widgets WorkshopVodafone Mobile Widgets Workshop
Vodafone Mobile Widgets WorkshopDaniel Herzog
 
Android study jams 2021 [collab] [master]
Android study jams 2021 [collab] [master]Android study jams 2021 [collab] [master]
Android study jams 2021 [collab] [master]GDSCIIITBbsr
 
Developing better debug_components
Developing better debug_componentsDeveloping better debug_components
Developing better debug_componentsTomoaki Imai
 
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, CAJeff Haynie
 
iPhone/iPad Development with Titanium
iPhone/iPad Development with TitaniumiPhone/iPad Development with Titanium
iPhone/iPad Development with TitaniumAxway Appcelerator
 
Android SDK and PhoneGap
Android SDK and PhoneGapAndroid SDK and PhoneGap
Android SDK and PhoneGapDoncho Minkov
 
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-2016N3XTCODER
 
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...Burin Asavesna
 

Tendances (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...
 

Similaire à Applico Android Info Session at Columbia University

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 2011sullis
 
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-15sullis
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application DevelopmentRamesh Prasad
 
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 HaaseParis Android User Group
 
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 HTML5Soumow Dollon
 
Building Cross-Platform Mobile Apps
Building Cross-Platform Mobile AppsBuilding Cross-Platform Mobile Apps
Building Cross-Platform Mobile AppsTroy Miles
 
Introduction to Android App Development
Introduction to Android App DevelopmentIntroduction to Android App Development
Introduction to Android App DevelopmentAndri Yadi
 
Build Mobile Application In Android
Build Mobile Application In AndroidBuild Mobile Application In Android
Build Mobile Application In Androiddnnddane
 
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 Lars Vogel
 
Android In A Nutshell
Android In A NutshellAndroid In A Nutshell
Android In A NutshellTed Chien
 
Android - Open Source Bridge 2011
Android - Open Source Bridge 2011Android - Open Source Bridge 2011
Android - Open Source Bridge 2011sullis
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidzeelpatel0504
 
Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015Nilay Binjola
 
Android Development in a Nutshell
Android Development in a NutshellAndroid Development in a Nutshell
Android Development in a NutshellAleix Solé
 
Android overview
Android overviewAndroid overview
Android overviewHas Taiar
 
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 DevelopmentSimon Guest
 

Similaire à 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
 

Dernier

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
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 Scriptwesley chun
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
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 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
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...Drew Madelung
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 

Dernier (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
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
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 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
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
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...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 

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