SlideShare a Scribd company logo
Android Dev [email_address]
Android Platform(1)
Android Platform(2) Linux for device drivers, memory management, process management, networking Next level up is the android native libs, written in c/c++ internally. Call from java interfaces. Dalvik VM. Dalvik runs dex files, converted from standard class file at compile time. Application Framework, for developers
More about Dalvik It is optimized for low memory requirements, and is designed to allow multiple VM instances to run at once, relying on the underlying OS for process isolation, MM and thread support. one app 16m memory
Dev environment Java Android SDKs + source code libs,  dev tools: dx, aapt, adb, ddms, ant scripts Simulators,  docs, sample codes Eclipse + ADT (optional)
android-project
Application Fundamentals Activities/Services/Content Providers/Broadcast receivers Intent(async messaging bundle) Manifest File layouts resources
Activity Associate with layout-view In stack(could be multiple instances) Lifecycle UI(Main) thread/Other threads: Don’t block the UI thread Do not access the android ui toolkit from outside the UI thread AsyncTask
intent-example-oauth 1. < activity   android:name = &quot;.ArticleActivity&quot; > < intent-filter > < action   android:name = &quot;android.intent.action.VIEW&quot; ></ action > < category   android:name = &quot;android.intent.category.DEFAULT&quot; ></ category >   < category   android:name = &quot;android.intent.category.BROWSABLE&quot; ></ category >   < data   android:scheme = &quot;mashableoauth&quot;   android:host = &quot;twitt&quot; ></ data > </ intent-filter > </ activity > 2.  ArticleActivity. startActivity( new  Intent(Intent. ACTION_VIEW , Uri.parse( requestToken .getAuthenticationURL()))); 3.  protected   void  onNewIntent(Intent intent) { Uri uri = intent.getData(); if  (uri !=  null  && uri.toString().startsWith( CALLBACK_URL )) { .... }
Layout/View Two kinds of UI elements, one is layout(manager), the other is View SDK provides lots of layouts SDK provides lots of views, like list-view, button, text-view, image-view, progress dialog.... custom-view steps(measure then layout) direct use the canvas to draw the view
Resources drawable assets, (png, xml) strings styles UI patterns ( http://www.google.com/events/io/2010/sessions/android-ui-design-patterns.html )
Performance Tips Caching (weak reference) Improve ListView ( http://www.google.com/events/io/2010/sessions/world-of-listview-android.html ) Other tips  http://www.google.com/events/io/2010/sessions/beginners-guide-android.html devguide( http://developer.android.com/guide/practices/design/performance.html )
your own app/game? Publishing, no app review on android-market User experience is the most important thing UI/Navigation You have 5 seconds for user operations to finish, but 100-200ms, user feels the lag widgets, notifications, services

More Related Content

PPTX
Understanding Box UI Elements
KEY
Android app development basics
PPT
Synapseindia android middleware
PDF
Fragments: Why, How, What For?
PDF
Introduction to fragments in android
PPTX
Jsp session 3
PPTX
Activities, Fragments, and Events
PPT
Introduction to Android Fragments
Understanding Box UI Elements
Android app development basics
Synapseindia android middleware
Fragments: Why, How, What For?
Introduction to fragments in android
Jsp session 3
Activities, Fragments, and Events
Introduction to Android Fragments

What's hot (10)

PDF
Exemplo de Fluxograma de Arquitetura aplicativo
ODP
Ppt 2 android_basics
ODP
Android training day 1
PDF
Android Components
ODP
Создание собственных сущностей с использованием Entity API
PDF
Android Fragment
PDF
Android UI Fundamentals part 1
PDF
Feedback using Angularjs + Typescript at Serenytics
PPTX
2. 엔티티 매핑(entity mapping) 2 2 엔티티매핑 2-2-4. 식별자 자동 생성(@generated-value) part2
PDF
Andriod dev toolbox part 2
Exemplo de Fluxograma de Arquitetura aplicativo
Ppt 2 android_basics
Android training day 1
Android Components
Создание собственных сущностей с использованием Entity API
Android Fragment
Android UI Fundamentals part 1
Feedback using Angularjs + Typescript at Serenytics
2. 엔티티 매핑(entity mapping) 2 2 엔티티매핑 2-2-4. 식별자 자동 생성(@generated-value) part2
Andriod dev toolbox part 2
Ad

Similar to Android dev (20)

PDF
Android TCJUG
PPTX
Basic android workshop
PDF
Getting Started with Android - OSSPAC 2009
PDF
Android Intro
PPT
Pertemuan 3 pm
PPT
Android class provider in mumbai
PPT
Migrating JavaME Apps to Android
PPT
Android Tutorial
PPT
Android In A Nutshell
PPT
Developing in android
PPT
android-tutorial-for-beginner
PPTX
Building your first android app using xamarin (Gill Cleeren)
PPTX
Android Mobile App Development basics PPT
PDF
Introduction to Android - Mobile Portland
PPTX
UCD Android Workshop
PPT
Android | Busy Java Developers Guide to Android: UI | Ted Neward
PPT
PPT Companion to Android
DOCX
Android Basic Tutorial
PPTX
Technology and Android.pptx
Android TCJUG
Basic android workshop
Getting Started with Android - OSSPAC 2009
Android Intro
Pertemuan 3 pm
Android class provider in mumbai
Migrating JavaME Apps to Android
Android Tutorial
Android In A Nutshell
Developing in android
android-tutorial-for-beginner
Building your first android app using xamarin (Gill Cleeren)
Android Mobile App Development basics PPT
Introduction to Android - Mobile Portland
UCD Android Workshop
Android | Busy Java Developers Guide to Android: UI | Ted Neward
PPT Companion to Android
Android Basic Tutorial
Technology and Android.pptx
Ad

Recently uploaded (20)

PPTX
MYSQL Presentation for SQL database connectivity
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Encapsulation theory and applications.pdf
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Cloud computing and distributed systems.
PDF
Electronic commerce courselecture one. Pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Approach and Philosophy of On baking technology
PDF
KodekX | Application Modernization Development
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
sap open course for s4hana steps from ECC to s4
PPT
Teaching material agriculture food technology
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
MYSQL Presentation for SQL database connectivity
The Rise and Fall of 3GPP – Time for a Sabbatical?
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
“AI and Expert System Decision Support & Business Intelligence Systems”
Advanced methodologies resolving dimensionality complications for autism neur...
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Encapsulation theory and applications.pdf
Machine learning based COVID-19 study performance prediction
Cloud computing and distributed systems.
Electronic commerce courselecture one. Pdf
Understanding_Digital_Forensics_Presentation.pptx
20250228 LYD VKU AI Blended-Learning.pptx
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Approach and Philosophy of On baking technology
KodekX | Application Modernization Development
MIND Revenue Release Quarter 2 2025 Press Release
sap open course for s4hana steps from ECC to s4
Teaching material agriculture food technology
Digital-Transformation-Roadmap-for-Companies.pptx

Android dev

  • 3. Android Platform(2) Linux for device drivers, memory management, process management, networking Next level up is the android native libs, written in c/c++ internally. Call from java interfaces. Dalvik VM. Dalvik runs dex files, converted from standard class file at compile time. Application Framework, for developers
  • 4. More about Dalvik It is optimized for low memory requirements, and is designed to allow multiple VM instances to run at once, relying on the underlying OS for process isolation, MM and thread support. one app 16m memory
  • 5. Dev environment Java Android SDKs + source code libs, dev tools: dx, aapt, adb, ddms, ant scripts Simulators, docs, sample codes Eclipse + ADT (optional)
  • 7. Application Fundamentals Activities/Services/Content Providers/Broadcast receivers Intent(async messaging bundle) Manifest File layouts resources
  • 8. Activity Associate with layout-view In stack(could be multiple instances) Lifecycle UI(Main) thread/Other threads: Don’t block the UI thread Do not access the android ui toolkit from outside the UI thread AsyncTask
  • 9. intent-example-oauth 1. < activity android:name = &quot;.ArticleActivity&quot; > < intent-filter > < action android:name = &quot;android.intent.action.VIEW&quot; ></ action > < category android:name = &quot;android.intent.category.DEFAULT&quot; ></ category > < category android:name = &quot;android.intent.category.BROWSABLE&quot; ></ category > < data android:scheme = &quot;mashableoauth&quot; android:host = &quot;twitt&quot; ></ data > </ intent-filter > </ activity > 2. ArticleActivity. startActivity( new Intent(Intent. ACTION_VIEW , Uri.parse( requestToken .getAuthenticationURL()))); 3. protected void onNewIntent(Intent intent) { Uri uri = intent.getData(); if (uri != null && uri.toString().startsWith( CALLBACK_URL )) { .... }
  • 10. Layout/View Two kinds of UI elements, one is layout(manager), the other is View SDK provides lots of layouts SDK provides lots of views, like list-view, button, text-view, image-view, progress dialog.... custom-view steps(measure then layout) direct use the canvas to draw the view
  • 11. Resources drawable assets, (png, xml) strings styles UI patterns ( http://www.google.com/events/io/2010/sessions/android-ui-design-patterns.html )
  • 12. Performance Tips Caching (weak reference) Improve ListView ( http://www.google.com/events/io/2010/sessions/world-of-listview-android.html ) Other tips http://www.google.com/events/io/2010/sessions/beginners-guide-android.html devguide( http://developer.android.com/guide/practices/design/performance.html )
  • 13. your own app/game? Publishing, no app review on android-market User experience is the most important thing UI/Navigation You have 5 seconds for user operations to finish, but 100-200ms, user feels the lag widgets, notifications, services