SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Build One, Ship to Many March 3, 2010 Mike Novak, Medialets
Agenda ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Introduction Developer Resources: ,[object Object],[object Object],[object Object],[object Object],[object Object]
What's available to developers? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Complete release notes at  http://developer.android.com/sdk
Why support Android 1.x? *Note: Android 2.x support is starting to gain some ground on devices that shipped with 1.x
Quick Overview - App Layout ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Specifying Alternate Resources ,[object Object],[object Object],[object Object],[object Object],For more information:  http://developer.android.com/guide/topics/resources/resources-i18n.html#AlternateResources
A Few Important Notes... ,[object Object],[object Object],[object Object],[object Object]
Initialization on Demand Holder Credit: Josh Guilfoye - http://devtcg.org ,[object Object],[object Object],[object Object],[object Object],[object Object]
Holder Sample Code public abstract class PlayerNotification {     public static PlayerNotification getInstance() {         if (Integer.parseInt(Build.VERSION.SDK) <= 4)             return PreEclair.Holder.sInstance;         else             return EclairAndBeyond.Holder.sInstance;     }          public abstract void showNotification(Service context, int id, Notification notification);     public abstract void hideNotification(Service context, int id);     private static class PreEclair extends PlayerNotification {         ...     }     private static class EclairAndBeyond extends PlayerNotification {         ...     } }
What to do about resources? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Some Android Best Practices.... ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Knuth, Donald. Structured Programming with go to Statements.  Computing Surveys 6  (1974): 261–301
Some Numbers ..... Source: http://developer.android.com
Medialets Analytics SDK! ,[object Object],[object Object],[object Object],[object Object],[object Object],http://www.medialets.com/blog/2010/03/01/medialets-releases-analytics-sdk-for-android-and-blackberry-applications/
Questions!
[object Object],[object Object],Blog: http://quietlycoding.com My Info...

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (19)

Using the Android Native Development Kit (NDK)
Using the Android Native Development Kit (NDK)Using the Android Native Development Kit (NDK)
Using the Android Native Development Kit (NDK)
 
Android ndk: Entering the native world
Android ndk: Entering the native worldAndroid ndk: Entering the native world
Android ndk: Entering the native world
 
Cross-Platform App Development with Flutter, Xamarin, React Native
Cross-Platform App Development with Flutter, Xamarin, React NativeCross-Platform App Development with Flutter, Xamarin, React Native
Cross-Platform App Development with Flutter, Xamarin, React Native
 
How to reverse engineer Android applications
How to reverse engineer Android applicationsHow to reverse engineer Android applications
How to reverse engineer Android applications
 
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
 
Practice of Android Reverse Engineering
Practice of Android Reverse EngineeringPractice of Android Reverse Engineering
Practice of Android Reverse Engineering
 
Fight your technical debt with Jenkins, Jacoco and Sonar
Fight your technical debt with Jenkins, Jacoco and SonarFight your technical debt with Jenkins, Jacoco and Sonar
Fight your technical debt with Jenkins, Jacoco and Sonar
 
Linux GUI Applications on Windows Subsystem for Linux
Linux GUI Applications on Windows Subsystem for LinuxLinux GUI Applications on Windows Subsystem for Linux
Linux GUI Applications on Windows Subsystem for Linux
 
Aosp+
Aosp+Aosp+
Aosp+
 
A great clash of symbols
A great clash of symbolsA great clash of symbols
A great clash of symbols
 
Python on Android with Delphi FMX - The Cross Platform GUI Framework
Python on Android with Delphi FMX - The Cross Platform GUI Framework Python on Android with Delphi FMX - The Cross Platform GUI Framework
Python on Android with Delphi FMX - The Cross Platform GUI Framework
 
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
 
Introduction to Flutter - truly crossplatform, amazingly fast
Introduction to Flutter - truly crossplatform, amazingly fastIntroduction to Flutter - truly crossplatform, amazingly fast
Introduction to Flutter - truly crossplatform, amazingly fast
 
Alternatives to Java for Android development
Alternatives to Java for Android developmentAlternatives to Java for Android development
Alternatives to Java for Android development
 
Flutter Intro
Flutter IntroFlutter Intro
Flutter Intro
 
Google I/O 2018 Extended, Baghdad - Flutter
Google I/O 2018 Extended, Baghdad  - FlutterGoogle I/O 2018 Extended, Baghdad  - Flutter
Google I/O 2018 Extended, Baghdad - Flutter
 
2018 20 best id es for python programming
2018 20 best id es for python programming2018 20 best id es for python programming
2018 20 best id es for python programming
 
Steelcon 2015 Reverse-Engineering Obfuscated Android Applications
Steelcon 2015 Reverse-Engineering Obfuscated Android ApplicationsSteelcon 2015 Reverse-Engineering Obfuscated Android Applications
Steelcon 2015 Reverse-Engineering Obfuscated Android Applications
 
Using the Android Native Development Kit (NDK)
Using the Android Native Development Kit (NDK)Using the Android Native Development Kit (NDK)
Using the Android Native Development Kit (NDK)
 

Andere mochten auch

Customer Segmentation
Customer SegmentationCustomer Segmentation
Customer Segmentation
Carlos Soares
 

Andere mochten auch (7)

Юрий Крутилин. Инструментарий для реверс-инжиниринга Android-приложений
Юрий Крутилин. Инструментарий для реверс-инжиниринга Android-приложений Юрий Крутилин. Инструментарий для реверс-инжиниринга Android-приложений
Юрий Крутилин. Инструментарий для реверс-инжиниринга Android-приложений
 
Digital Media Projects For Small Museums
Digital Media Projects For Small MuseumsDigital Media Projects For Small Museums
Digital Media Projects For Small Museums
 
Utsav Mahendra : Managing Relationships and Building Loyalty
Utsav Mahendra : Managing Relationships  and Building Loyalty Utsav Mahendra : Managing Relationships  and Building Loyalty
Utsav Mahendra : Managing Relationships and Building Loyalty
 
Managing relationship and building loyalty
Managing relationship and building loyalty Managing relationship and building loyalty
Managing relationship and building loyalty
 
Service recovery
Service recoveryService recovery
Service recovery
 
Customer Segmentation
Customer SegmentationCustomer Segmentation
Customer Segmentation
 
Customer Relationship Management (CRM)
Customer Relationship Management (CRM)Customer Relationship Management (CRM)
Customer Relationship Management (CRM)
 

Ähnlich wie Android Developer Meetup

Manish Chasta - Securing Android Applications
Manish Chasta - Securing Android ApplicationsManish Chasta - Securing Android Applications
Manish Chasta - Securing Android Applications
Positive Hack Days
 
Curso de Desenvolvimento Mobile - Android - Stack
Curso de Desenvolvimento Mobile - Android - StackCurso de Desenvolvimento Mobile - Android - Stack
Curso de Desenvolvimento Mobile - Android - Stack
Jackson F. de A. Mafra
 
androidPramming.ppt
androidPramming.pptandroidPramming.ppt
androidPramming.ppt
BijayKc16
 

Ähnlich wie Android Developer Meetup (20)

Getting Native with NDK
Getting Native with NDKGetting Native with NDK
Getting Native with NDK
 
Manish Chasta - Securing Android Applications
Manish Chasta - Securing Android ApplicationsManish Chasta - Securing Android Applications
Manish Chasta - Securing Android Applications
 
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
 
Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Curso de Desenvolvimento Mobile - Android - Stack
Curso de Desenvolvimento Mobile - Android - StackCurso de Desenvolvimento Mobile - Android - Stack
Curso de Desenvolvimento Mobile - Android - Stack
 
Session 2 beccse
Session 2 beccseSession 2 beccse
Session 2 beccse
 
An Introduction To Android
An Introduction To AndroidAn Introduction To Android
An Introduction To Android
 
Seminar on android app development
Seminar on android app developmentSeminar on android app development
Seminar on android app development
 
Advance Android Application Development
Advance Android Application DevelopmentAdvance Android Application Development
Advance Android Application Development
 
Android session-1-sajib
Android session-1-sajibAndroid session-1-sajib
Android session-1-sajib
 
Improve Android System Component Performance
Improve Android System Component PerformanceImprove Android System Component Performance
Improve Android System Component Performance
 
C# Production Debugging Made Easy
 C# Production Debugging Made Easy C# Production Debugging Made Easy
C# Production Debugging Made Easy
 
Voxxed days Vilnius 2015 - Android Reverse Engineering Lab
Voxxed days Vilnius 2015 - Android Reverse Engineering LabVoxxed days Vilnius 2015 - Android Reverse Engineering Lab
Voxxed days Vilnius 2015 - Android Reverse Engineering Lab
 
androidPramming.ppt
androidPramming.pptandroidPramming.ppt
androidPramming.ppt
 
Droidcon uk2012 androvm
Droidcon uk2012 androvmDroidcon uk2012 androvm
Droidcon uk2012 androvm
 
lecture-2-android-dev.pdf
lecture-2-android-dev.pdflecture-2-android-dev.pdf
lecture-2-android-dev.pdf
 
Discover System Facilities inside Your Android Phone
Discover System Facilities inside Your Android Phone Discover System Facilities inside Your Android Phone
Discover System Facilities inside Your Android Phone
 
Leveraging Android's Linux Heritage at AnDevCon3
Leveraging Android's Linux Heritage at AnDevCon3Leveraging Android's Linux Heritage at AnDevCon3
Leveraging Android's Linux Heritage at AnDevCon3
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 

Mehr von Medialets

Mehr von Medialets (8)

IAB B2B Mobile Case Study
IAB B2B Mobile Case StudyIAB B2B Mobile Case Study
IAB B2B Mobile Case Study
 
Servo Mobile Attribution Demystified
Servo Mobile Attribution Demystified Servo Mobile Attribution Demystified
Servo Mobile Attribution Demystified
 
2012 Benchmarks
2012 Benchmarks2012 Benchmarks
2012 Benchmarks
 
Medialets’ Video & Rich Media Benchmark Report, 2015
Medialets’ Video & Rich Media Benchmark Report, 2015Medialets’ Video & Rich Media Benchmark Report, 2015
Medialets’ Video & Rich Media Benchmark Report, 2015
 
Mobile & Tablet Ad Attribution Benchmarks Report Q3 2014, by Medialets
Mobile & Tablet Ad Attribution Benchmarks Report Q3 2014, by MedialetsMobile & Tablet Ad Attribution Benchmarks Report Q3 2014, by Medialets
Mobile & Tablet Ad Attribution Benchmarks Report Q3 2014, by Medialets
 
Medialets H1-2014 Mobile & Tablet Advertising Benchmarks Report
Medialets H1-2014 Mobile & Tablet Advertising Benchmarks ReportMedialets H1-2014 Mobile & Tablet Advertising Benchmarks Report
Medialets H1-2014 Mobile & Tablet Advertising Benchmarks Report
 
Medialets Data Spotlight - Mobile Rich Media Benchmarks Report Jan/Feb 2011
Medialets Data Spotlight - Mobile Rich Media Benchmarks Report Jan/Feb 2011Medialets Data Spotlight - Mobile Rich Media Benchmarks Report Jan/Feb 2011
Medialets Data Spotlight - Mobile Rich Media Benchmarks Report Jan/Feb 2011
 
Medialets Data Spotlight
Medialets Data Spotlight Medialets Data Spotlight
Medialets Data Spotlight
 

Kürzlich hochgeladen

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Kürzlich hochgeladen (20)

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
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
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
 
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...
 
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
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
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, ...
 
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
 
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
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
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...
 
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
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
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
 

Android Developer Meetup

  • 1. Build One, Ship to Many March 3, 2010 Mike Novak, Medialets
  • 2.
  • 3.
  • 4.
  • 5. Why support Android 1.x? *Note: Android 2.x support is starting to gain some ground on devices that shipped with 1.x
  • 6.
  • 7.
  • 8.
  • 9.
  • 10. Holder Sample Code public abstract class PlayerNotification {     public static PlayerNotification getInstance() {         if (Integer.parseInt(Build.VERSION.SDK) <= 4)             return PreEclair.Holder.sInstance;         else             return EclairAndBeyond.Holder.sInstance;     }         public abstract void showNotification(Service context, int id, Notification notification);     public abstract void hideNotification(Service context, int id);     private static class PreEclair extends PlayerNotification {         ...     }     private static class EclairAndBeyond extends PlayerNotification {         ...     } }
  • 11.
  • 12.
  • 13. Some Numbers ..... Source: http://developer.android.com
  • 14.
  • 16.