Android Application Development
Agenda Android Business Model Why Android Android application market space Market Segments & Target customers Business opportunities Application Development API Basic building blocks Application Life cycle Tools Chain Sample application
Why Android
Faster learning curve Java > Android Android App Stores
Why Android
What should I develop
Where is my target customer
What my customer needs
Who will pay for my app
What else I should know Functionality is import but Usability is more important Is the application simple to use? How does your app integrate with device Location, movement, accelerometer, SIP, Near field communication, Camera Social connection how does the application allow the user to connect to other people in existing mobile communication paths such as SMS, IM, or voice? How is UI app UI design Does user has option switch skins How is App Integration with Home- Screen
Where can we start Regional applications Synchronization & sharing users data Games & Productivity apps Social Applications Applications for large customer base Schools or Universities, Health sector Kids & Education sector Optimization with Native porting
speech recognition Raw audio recording and playback APIs Video recording APIs for developers (3GP format) Video and photo sharing Intents Media search Intent Android 1.6 Android 1.5 API for creating, recognizing, loading, and saving gestures Text-to-speech Search framework For global search Android 1.6 includes support for CDMA Android 2.1 Contacts and accounts New BT profiles: Object Push Profile (OPP) and Phone Book Access Profile (PBAP) Android 2.2 Android Cloud to Device Messaging data backup and restore HTTP progressive streaming portable Wi-Fi hotspot New APIs for OpenGL ES 2.0 Android 2.3 SIP-based VoIP Near Field Communications (NFC) Multiple cameras support
Android Application Activities Services Broadcast receivers Content providers The manifest file
Activity Life Cycle Life cycle methods – –onCreate – –onStart – –onResume – –onPause – –onStop – –onRestart – –onDestroy
Service Life cycle Life cycle methods – –onCreate – –onStart/onBind – –onUnbind – –onRebind – –onDestroy
Location and Maps What google provides – –android.locationandroid.location Android provides a location framework that your application can use to determine the device's location and bearing and register for updates – –Google Maps external library A Google Maps external library is available that lets you display and manage Maps data Location Services – –LocationManagerLocationManager The central component of the location framework It provides APIs to determine location getSystemService(Context.LOCATION_SERVICE) getSystemService(Context.LOCATION_SERVICE) The method returns a handle to a new LocationManager instanceLocationManager
LocationManager Query for the list of all LocationProviders for the last known user location.LocationProvider Register/unregister for periodic updates of the user's current location from a location provider (specified either by criteria or name). Register/unregister for a given Intent to be fired if the device comes within a given proximity (specified by radius in meters) of a given lat/longIntent
Requesting Location Updates Getting user location in Android works by means of callback GPS_PROVIDER for NETWORK_PROVIDER
Requesting User Permissions Android manifest file to enable this service for your app
API Speech Input API
Tools
Tools Chain DDMS
Tools Chain Android Debug Bridge (adb) – client-server program Hierarchy Viewer Layoutopt Set-up : android, mksdcard, Testing : Monkey Traceview, ProGuard, zipalign
@Huawei
Valluri Kumar