Mobile Application Development
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Mobile Application Development

on

  • 2,158 views

 

Statistics

Views

Total Views
2,158
Views on SlideShare
2,153
Embed Views
5

Actions

Likes
1
Downloads
147
Comments
0

1 Embed 5

http://www.slideshare.net 5

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Mobile Application Development Presentation Transcript

  • 1. twincling.org Mobile Application Development August 8th, 2009 Hyderabad, India
  • 2. twincling.org We appreciate
  • 3. twincling.org Outline ● Hello Android World ● Android Architecture ● Android SDK Overview ● UI Development ● 3D with OpenGL
  • 4. twincling.org What is Android? An Open Platform for Mobile Development ● A hardware reference design for mobiles ● A Linux operating system kernel ● Open source libraries ● A run time environment ● An application framework and UI framework ● Some pre-installed applications and ● Software Development Kit
  • 5. twincling.org Android SDK ● No licensing, distribution, or development fees ● Hardware access like network, Camera, accelerometer ● GSM, EDGE, and 3G networks ● GPS with location-based services ● Full multimedia hardware control including playback and recording using the camera and microphone ● Accelerometer and compass hardware ● IPC message passing ● Shared data stores ● An integrated open source WebKit-based browser ● Applications that integrate Map controls as part of their user interface ● Peer-to-peer (P2P) support using Google Talk ● Mobile-optimized hardware-accelerated graphics, both 2D and 3D ● Optimized memory and process management
  • 6. twincling.org Software Stack
  • 7. twincling.org Android Application ● Activity Manager ● Views ● Notification Manager ● Content Providers ● Resource Manager
  • 8. twincling.org Android Libraries ● android.util – string formatters, XML ● android.os – message passing, IPC, clock, debugging ● android.graphics – canvas, colors, primitives ● android.text – display, parse text ● android.database – cursors, database ● android.content – data access, content providers ● android.view – user interface ● android.widget – buttons, text boxes, list boxes etc ● com.google.android.maps – Google Maps ● android.app – Application, Activity and Services ● android.provider – standard content provider like Contacts ● android.telephony – phone stack ● android.webkit – Web-based content
  • 9. twincling.org Android Advanced Libraries ● android.location – Location access ● android.media – Audio and Video ● android.opengl – OpenGL ES API for 3D ● android.hardware – Camera, Accelerometer, Compass ● android.bluetooth - Bluetooth ● android.net.wifi - WiFi
  • 10. twincling.org SDK includes.. ● Android APIs ● Android project development tools ● Android executable(.dex) and packaging(.apk) tools ● Android Emulator ● Dalvik Debug Monitoring Service (DDMS) ● Documentation and Sample Code
  • 11. twincling.org SDK Setup ● http://code.google.com/android/download.html ● Android pluging available for Eclipse, Netbeans and IntelliJ with JDK 5 or later ● Android Development Toolkit (ADT) plugin https://dl-ssl.google.com/android/eclipse/ ●
  • 12. twincling.org Types of Android apps ● Foreground Activity ● Background Service ● Intermittent Activity
  • 13. twincling.org Component of an application ● Activities ● Services ● Content Providers ● Intents ● Broadcast Receivers ● Notifications
  • 14. twincling.org Process States and Priority
  • 15. twincling.org Activity Stack
  • 16. twincling.org Activity States ● Active ● Paused ● Stopped ● Inactive
  • 17. twincling.org State Changes
  • 18. twincling.org In code. package org.twincling.hello; import android.app.Activity; import android.os.Bundle; public class HelloWorld extends Activity { /** Called when the activity is first created. */ // Called at the start of the full lifetime. @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Initialize activity. setContentView(R.layout.main); } // Called after onCreate has finished, use to restore UI state @Override public void onRestoreInstanceState(Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); // Restore UI state from the savedInstanceState. // This bundle has also been passed to onCreate. }
  • 19. twincling.org //Called before subsequent visible lifetimes //for an activity process. @Override public void onRestart(){ super.onRestart(); //Load changes knowing that the activity has already //been visible within this process. } //Called at the start of the visible lifetime. @Override public void onStart(){ super.onStart(); //Apply any required UI change now that the Activity is visible. } //Called at the start of the active lifetime. @Override public void onResume(){ super.onResume(); //Resume any paused UI updates, threads, or processes required //by the activity but suspended when it was inactive. } //Called to save UI state changes at the //end of the active lifecycle. @Override
  • 20. twincling.org //Called to save UI state changes at the //end of the active lifecycle. @Override public void onSaveInstanceState(Bundle savedInstanceState) { //Save UI state changes to the savedInstanceState. // This bundle will be passed to onCreate if the process is // killed and restarted. super.onSaveInstanceState(savedInstanceState); } // Called at the end of the active lifetime. @Override public void onPause(){ // Suspend UI updates, threads, or CPU intensive processes // that don’t need to be updated when the Activity isn’t // the active foreground activity. super.onPause(); }
  • 21. twincling.org // Called at the end of the visible lifetime. @Override public void onStop(){ // Suspend remaining UI updates, threads, or processing // that aren’t required when the Activity isn’t visible. // Persist all edits or state changes // as after this call the process is likely to be killed. super.onStop(); } // Called at the end of the full lifetime. @Override public void onDestroy(){ // Clean up any resources including ending threads, // closing database connections etc. super.onDestroy(); } }
  • 22. twincling.org Summary / Take home ● Android overview ● Get started on mobile app development
  • 23. twincling.org Resources ● Android http://developer.android.com/
  • 24. twincling.org Books
  • 25. twincling.org Special thanks AppLabs Pvt. Ltd. http://www.applabs.com/
  • 26. twincling.org info@twincling.org freedom of innovation 5,000+ members TSM (2nd Sat) BoF Hackathon Workshops 95+ college sessions and workshops Industry – Student interaction 7-member board of directors Hyderabad, A. P. twincling.org India Largest independent society in A.P.