SlideShare a Scribd company logo
 
Few reasons to go MAD… ,[object Object],[object Object],[object Object],[object Object],[object Object]
Introduction to Android ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Why Android ,[object Object],[object Object],[object Object],[object Object],[object Object]
Open Handset Alliance (OHA) ,[object Object],[object Object],[object Object],[object Object],[object Object]
 
Features ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Features (Contd….) ,[object Object],[object Object],[object Object],[object Object]
Android Architecture
Linux Kernel ,[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Application Framework ,[object Object],[object Object],[object Object]
Applications ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Android applications are compiled to Dalvik byte code Write app in Java Compiled in Java Transformed to Dalvik byte code Linux OS   Loaded into Dalvik VM
Android SDK  ADT: Android Development Tool, an  Eclipe plugin  Two debuggers  adb : Android Debug Bridge  ddms :  Dalvik Debug Monitor Server  aapk : Android Application package tool  All resources are bundled into an archive, called  apk file.  dx : java byte code to  Dalvik executable translator
Differences between Smart Phones Feature Android Windows mobile BlackBerry company Google Microsoft RIM OS family Linux Windows  Mobile OS Languages Java Visual C++ C++ SDK Platform Multiplatform dependent dependent Face book Yes Yes Yes Multitasking Yes limited limited
Differences between Apple and Android Specification Apple Android Ownership Apple Proprietary Google open Source Compatible Access Technology 3G,3.5G,Wi-Fi,Bluetooth 2G,3G,3.5G and 4G(GSM , CDMA,Bluetooth,Wi-Fi, and WiMAX) Compatible Devices iPod , iPod Touch, iPhones Any Devices Messaging SMS , MMS ,email SMS , MMS , email and C2DM Web Browser Safari Open source Web kit layout engine coupled with Chrome’s V8 JavaScript engine Connectivity Wi-Fi, Bluetooth Wi-Fi, Bluetooth and NFC Multitasking Supported Supported Other device connectivity (Internet) Bluetooth (Internet Tethering) Hotspot feature with Wi-Fi
Differences between Apple and Android Specification Apple Android Chrome to phone Not supported Supported 3D Google Map Not Yet Supported Email Attachments Single file only Multiple files Google Talk Web browser chat GTalk Specific Client and Video Supported Hardware Vendors Apple Samsung,Motorola,LG,Sony Ericsson, Dell,Huawei,HTC 3rd Party Branded OS No Supported Adobe Flash Support Not Supported Supported
Android applications have common structure Views  such as lists, grids, text boxes, buttons, and even an embeddable web browser Content Providers  that enable applications to access data from other applications (such as Contacts), or to share their own data A  Resource Manager , providing access to non-code resources such as localized strings, graphics, and layout files A  Notification Manager  that enables all apps to display custom alerts in the status bar An  Activity Manager  that manages the life cycle of applications and provides a common navigation backstack
Android applications have common  structure Broadcast receivers  can trigger intents that start an application Data storage  provide data for your apps, and can be shared between apps – database, file, and shared preferences (hash map) used by group of applications Services  run in the background and have no UI for the user – they will update data, and trigger events Intents  specify what specific action should be performed Activity  is the presentation layer of your app: there will be one per screen, and the Views provide the UI to the activity
Replacing & Reusing Components GMail Contacts Home Blogger Chat Client component makes a request for a specific action “ Pick photo” Picasa System picks best component for that action New components can use existing functionality Blogger Photo Gallery
There is a common file structure for applications code images files UI layouts constants Autogenerated resource list
Hello World !!! ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Project Properties Project Name This is the name of the directory or folder on your computer that you want to contain the project. Package Name This is the package namespace (following the same rules as for packages in the Java programming language) that you want all your source code to reside under. This also sets the package name under which the stub Activity will be generated. The package name you use in your application must be unique across all packages installed on the system; for this reason, it's very important to use a standard domain-style package for your applications. In the example above, we used the package domain "com.chicagoandroids".  Activity Name This is the name for the class stub that will be generated by the plug-in. This will be a subclass of Android's Activity class. An Activity is simply a class that can run and do work. It can create a UI if it chooses, but it doesn't need to.  Application Name This is the human-readable title for your application.
The Automatic* Portions… ,[object Object],[object Object]
The Automatic* Portions… ,[object Object],[object Object]
A word about the emulator ,[object Object],[object Object],[object Object],[object Object]
Run hello world ,[object Object],[object Object],[object Object],[object Object]
The AndroidManifest lists application details ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The AndroidManifest File ,[object Object],[object Object],[object Object],[object Object]
The AndroidManifest File ,[object Object],[object Object],[object Object],[object Object]
Activities and Tasks ,[object Object],[object Object],[object Object]
Activities (continue)
Activities (continue)
Activities vs Tasks (Apps) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],[object Object]
Managing Tasks ,[object Object],[object Object],[object Object],[object Object],[object Object]
Managing Tasks ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],[object Object]
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],New Activity Activity A Root Activity Original Task Activity A Root Activity Original Task New Activity New Task standard/singleTop without FLAG_ACTIVITY_NEW_TASK singleTask/singleInstance
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],[object Object],[object Object],Activity B Activity A Task A Activity D Task B Activity B and Activity C are  standard/singleTop Activity C Activity B Activity C Activity B Activity A Task A Activity C Task B Activity C is singleTask or singleInstance
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],"standard" ,[object Object],[object Object],"singleTop" "singleTask" "singleInstance" ,[object Object]
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],Activity B Activity A Activity C Original Task Activity D An intent arrives for an activity of type D Activity B Activity A Activity C Activity D Activity D If D is"standard" Activity B Activity C Activity D If D is"singleTop" The existing instance D is expected to handle the new intent (since it's at the top of the stack) Activity A
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],Activity B Original Task An intent arrives for an activity of type B If B is"singleInstance" A "singleInstance" activity is always at the top of the stack, so it is always in position to handle the intent. Activity B
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],Activity B Original Task An intent arrives for an activity of type B If B is"singleTask"  Activity B can handle the intent since it is in position. Activity B Activity A Activity A Activity B Original Task An intent arrives for an activity of type B If B is"singleTask"  Activity B cannot handle the intent since it is not in position and the intent is dropped. Activity B Activity A Activity A
Activities and Tasks (Cont)
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],[object Object],[object Object]
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],[object Object]
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Activities and Tasks (Cont) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Process Basics ,[object Object],[object Object],[object Object],[object Object],[object Object]
Creating an Activity ,[object Object],[object Object],[object Object],[object Object],[object Object]
Declaring the Activity in Manifest File ,[object Object],[object Object],[object Object]
Declaring the Activity in Manifest File ,[object Object],[object Object],[object Object],[object Object],[object Object]
Starting an Activity ,[object Object],[object Object],[object Object]
Starting an Activity ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Managing the Activity Lifecycle ,[object Object],[object Object],[object Object],[object Object]
Paused v/s Stopped ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Android Activity Life Cycle ,[object Object],[object Object],[object Object]
Android Activity Life Cycle ,[object Object],[object Object],[object Object],[object Object]
Android Activity Life Cycle ,[object Object],[object Object],[object Object]
Saving Activity State ,[object Object],[object Object],[object Object]
Saving Activity State ,[object Object],[object Object],[object Object]
Tasks and Back Stack ,[object Object],[object Object],[object Object],[object Object]
Tasks and Back Stack
Application Life Cycle ,[object Object],[object Object],[object Object]
Application Life Cycle (1) System Process Home  Process Home Mail Message Browser Map Mail  Process Browser  Process Map  Process
Application Life Cycle (2) System Process Home  Process Home Map Browser Message Mail Map  Process Browser  Process Mail  Process
Intents & Intent Filters
What is Intent Messaging? ,[object Object],[object Object],[object Object],[object Object]
What is Intent Messaging? ,[object Object],[object Object],[object Object]
What is Intent Messaging? ,[object Object],[object Object],[object Object]
What Does Intent Object Contain? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Intent Object Structure
Intent Object Structure Is Made Of ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Component name Field ,[object Object],[object Object],[object Object],[object Object],[object Object]
Action Field ,[object Object],[object Object],[object Object],[object Object],[object Object]
Data Field ,[object Object],[object Object],[object Object],[object Object],[object Object]
Data Field ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Category Field ,[object Object],[object Object],[object Object],[object Object]
Pre-defined Categories (by Android) ,[object Object],[object Object],[object Object],[object Object]
Extras Field ,[object Object],[object Object],[object Object],[object Object]
Flags Field ,[object Object],[object Object]
Intent Resolution
What is Intent Resolution? ,[object Object]
Types of Intents ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Intent Resolution Schemes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
What are Intent Filters? ,[object Object],[object Object],[object Object],[object Object],[object Object]
Where are Filters Specified? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Intent Filters Intent Resolution
Intent Filters ,[object Object],[object Object],[object Object],[object Object]
How Android System Perform Intent Resolution (for Implicit Intents)? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Action Test ,[object Object],[object Object],[object Object],[object Object]
Category Test ,[object Object],[object Object],[object Object],[object Object],[object Object]
Category Test - android.intent.category.DEFAULT ,[object Object],[object Object]
Data Test ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Data Test - URI ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Data Test - Mime media type ,[object Object],[object Object]
Data Test - Testing Rules ,[object Object],[object Object],[object Object],[object Object],[object Object]
Intent Resolution – Special Use Cases
.MAIN Action & .LAUNCHER Category ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
.MAIN Action & .LAUNCHER Category ,[object Object],[object Object]
User Interface In Android
View and ViewGroup ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
View and ViewGroup ,[object Object],[object Object],[object Object],[object Object]
View Hierarchy ,[object Object]
What is a Layout? ,[object Object],[object Object]
How to declare a Layout? Two Options ,[object Object],[object Object],[object Object],[object Object]
Example of using both options ,[object Object],[object Object],[object Object],[object Object]
Advantages of Option #1: Declaring UI in XML ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Layout File Structure ,[object Object],[object Object]
Example: Layout File ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Where to create Layout file? ,[object Object]
Load the Layout XML Resource ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Attributes ,[object Object],[object Object],[object Object],[object Object],[object Object]
ID Attribute ,[object Object],[object Object],[object Object],[object Object]
ID Attribute - Android Resource ID ,[object Object],[object Object],[object Object],[object Object]
How to reference views in Java code? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
What Are Layout Parameters? ,[object Object],[object Object],[object Object]
[object Object]
layout_width & layout_height ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Linear Layout fill_parent fill_parent Some Button... fill_parent wrap_content
Layout Types ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
LinearLayout ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
LinearLayout ,[object Object],[object Object],[object Object]
LinearLayout
LinearLayout ,[object Object],[object Object],[object Object]
LinearLayout ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
LinearLayout ,[object Object]
LinearLayout ,[object Object],[object Object],[object Object],[object Object],[object Object]
LinearLayout ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
LinearLayout ,[object Object],[object Object],[object Object],[object Object],[object Object]
LinearLayout ,[object Object],[object Object]
LinearLayout LinearLayout vertical LinearLayout horizontal weight=0.5 weight=0.5
RelativeLayout ,[object Object],[object Object],[object Object]
RelativeLayout toRightOf 1 1 parentTop parentLeft layout_below button1 2 parentBottom toRightOf 1
RelativeLayout : LayoutParams @+id/green @+id/red android:layout_above="@id/green" android:layout_below="@id/red" @+id/green @+id/red android:layout_toLeftOf="@id/green" android:layout_toRightOf="@id/red"
RelativeLayout : LayoutParams @+id/red @+id/red @+id/green android:layout_alignBottom="@id/red" @+id/green android:layout_alignTop="@id/red" @+id/green android:layout_alignLeft="@id/red" @+id/green android:layout_alignRight="@id/red"
RelativeLayout : LayoutParams android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" parent @+id/red @+id/red
RelativeLayout Example ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Table Layout ,[object Object],[object Object],[object Object],[object Object]
Table Layout ,[object Object],[object Object],[object Object]
Table Layout ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Table Layout ,[object Object],[object Object]
Table Layout Example
Table Layout ,[object Object],[object Object],[object Object],[object Object]
Table Layout ,[object Object]
Frame Layout ,[object Object],[object Object],[object Object],[object Object]
Frame Layout Example ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
ScrollView Layout ,[object Object],[object Object],[object Object],[object Object],[object Object]
Example of ScrollView
Absolute Layout ,[object Object],[object Object],[object Object],[object Object],[object Object]
Adapting to Display Orientation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Adapting to Display Orientation
Adapting to Display Orientation ,[object Object],[object Object],[object Object],[object Object]
Adapting to Display Orientation ANCHORING VIEWS LANDSCAPE PORTRAIT
Adapting to Display Orientation ,[object Object],[object Object],[object Object],[object Object]
Persisting State Information during Changes in Configuration ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Detecting Orientation Changes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Controlling the Orientation of the Activity ,[object Object],[object Object],[object Object],[object Object]
View Widgets (android.view.View) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
View Widgets (android.view.View) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
View Widgets (android.view.View) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
View Widgets (android.view.View) ,[object Object],[object Object],[object Object],[object Object],[object Object]
View Widgets (android.view.View) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
View Widgets (android.view.View) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
View Widgets (android.view.View) ,[object Object],[object Object],[object Object],[object Object],[object Object]
View Widgets (android.view.View) ,[object Object],[object Object],[object Object]
View Widgets (android.view.View) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Using android.widget.Button ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Using android.widget.RadioButton ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Creating Menus ,[object Object],[object Object],[object Object],[object Object],[object Object]
Creating Menus ,[object Object],[object Object],[object Object],[object Object],[object Object]
Creating Menus ,[object Object],<option menu> <sub-menu> <context menu> Automatically  fill “Hi!”  in the EditText Plus menu will also open a  sub-menu Display messages when a menu  clicked
Menu Composition Plus Home Pre Next <option menu> Sub1 Sub2 Hi Hola Hello <sub-menu> <context menu from EditText> Long press  in EditText
Creating  a Menu Resource ,[object Object],[object Object],[object Object],[object Object]
Creating  a Menu Resource ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Creating  a Menu Resource ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Inflating a Menu Resource ,[object Object],[object Object],[object Object],[object Object]
Inflating a option menu resource  ,[object Object],[object Object],public boolean  onCreateOptionsMenu (Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu. menu , menu); return true; }
Response to user action ,[object Object],[object Object],@Override public boolean  onOptionsItemSelected (MenuItem item) { switch (item.getItemId()) {  case R.id.menuItemPlus: Toast.makeText(this, &quot;Plus Button Clicked !&quot;, Toast.LENGTH_SHORT).show(); Log.i(TAG,&quot;menuItemPlus&quot;); return true; : : case R.id.menuItemNext: Toast.makeText(this, &quot;Next Button Clicked !&quot;, Toast.LENGTH_SHORT).show(); Log.i(TAG,&quot;menuItemNext&quot;); return true; } return false; }
Changing menu items at runtime ,[object Object],[object Object],[object Object]
How to Create Context Menu? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Populating Menu with Menu Items: #1 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
How to handle User's Menu Selection? ,[object Object],[object Object],[object Object],[object Object]
Example: Handling Menu Selection ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Creating Submenus ,[object Object],[object Object],[object Object]
Creating Submenus ,[object Object]
Creating Dialogs ,[object Object],[object Object],[object Object]
Creating Dialogs ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Showing a Dialog ,[object Object],[object Object],[object Object]
Showing a Dialog ,[object Object],[object Object],[object Object]
Example of Showing a Dialog ,[object Object],[object Object],[object Object],[object Object],[object Object]
Creating an Alert Dialog ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Creating an Alert Dialog ,[object Object],[object Object],[object Object]
Creating an Alert Dialog
Creating an Alert Dialog – Adding Buttons ,[object Object]
Creating an Alert Dialog – Adding List ,[object Object]
Creating an Alert Dialog – Adding checkboxes and radio buttons ,[object Object],[object Object]
Creating a ProgressDialog ,[object Object],[object Object],[object Object],[object Object]
Creating a ProgressDialog ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Date/Time Selection Widgets ,[object Object],[object Object],[object Object],[object Object],[object Object]
Date/Time Select
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android
PPT Companion to Android

More Related Content

What's hot

Introduction to Android
Introduction to Android Introduction to Android
Introduction to Android
Ranjith Kumar
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application Development
Benny Skogberg
 
Android Basic Concept
Android Basic Concept Android Basic Concept
Android Basic Concept
University of Potsdam
 
Flutter
FlutterFlutter
Flutter
Ankit Kumar
 
Mobile Application Development With Android
Mobile Application Development With AndroidMobile Application Development With Android
Mobile Application Development With Android
guest213e237
 
Android application development ppt
Android application development pptAndroid application development ppt
Android application development ppt
Gautam Kumar
 
Flutter
FlutterFlutter
Basic android-ppt
Basic android-pptBasic android-ppt
Basic android-ppt
Srijib Roy
 
Android presentation slide
Android presentation slideAndroid presentation slide
Android presentation slide
APSMIND TECHNOLOGY PVT LTD.
 
Android ppt
 Android ppt Android ppt
Android ppt
Basavaraj Amogi
 
Android App Development Project in College
Android App Development Project in College Android App Development Project in College
Android App Development Project in College
Logan Smith
 
Flutter talkshow
Flutter talkshowFlutter talkshow
Flutter talkshow
Nhan Cao
 
Android summer training report
Android summer training reportAndroid summer training report
Android summer training report
Shashendra Singh
 
Android Synopsis
Android SynopsisAndroid Synopsis
Android Synopsis
Niraj Rahi
 
Android Operating System
Android Operating SystemAndroid Operating System
Android Operating System
Bilal Mirza
 
iOS Operating System
iOS Operating SystemiOS Operating System
iOS Operating System
Jawaher Abdulwahab Fadhil
 
Android
AndroidAndroid
Android
Tapan Khilar
 
Introduction to Firebase from Google
Introduction to Firebase from GoogleIntroduction to Firebase from Google
Introduction to Firebase from Google
Manikantan Krishnamurthy
 
Mobile application development
Mobile application developmentMobile application development
Mobile application development
Eric Cattoir
 
Presentation on Android
Presentation on AndroidPresentation on Android
Presentation on Android
Nausad Ahamed
 

What's hot (20)

Introduction to Android
Introduction to Android Introduction to Android
Introduction to Android
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application Development
 
Android Basic Concept
Android Basic Concept Android Basic Concept
Android Basic Concept
 
Flutter
FlutterFlutter
Flutter
 
Mobile Application Development With Android
Mobile Application Development With AndroidMobile Application Development With Android
Mobile Application Development With Android
 
Android application development ppt
Android application development pptAndroid application development ppt
Android application development ppt
 
Flutter
FlutterFlutter
Flutter
 
Basic android-ppt
Basic android-pptBasic android-ppt
Basic android-ppt
 
Android presentation slide
Android presentation slideAndroid presentation slide
Android presentation slide
 
Android ppt
 Android ppt Android ppt
Android ppt
 
Android App Development Project in College
Android App Development Project in College Android App Development Project in College
Android App Development Project in College
 
Flutter talkshow
Flutter talkshowFlutter talkshow
Flutter talkshow
 
Android summer training report
Android summer training reportAndroid summer training report
Android summer training report
 
Android Synopsis
Android SynopsisAndroid Synopsis
Android Synopsis
 
Android Operating System
Android Operating SystemAndroid Operating System
Android Operating System
 
iOS Operating System
iOS Operating SystemiOS Operating System
iOS Operating System
 
Android
AndroidAndroid
Android
 
Introduction to Firebase from Google
Introduction to Firebase from GoogleIntroduction to Firebase from Google
Introduction to Firebase from Google
 
Mobile application development
Mobile application developmentMobile application development
Mobile application development
 
Presentation on Android
Presentation on AndroidPresentation on Android
Presentation on Android
 

Similar to PPT Companion to Android

Android In A Nutshell
Android In A NutshellAndroid In A Nutshell
Android In A Nutshell
Ted Chien
 
Android Anatomy
Android  AnatomyAndroid  Anatomy
Android Anatomy
Bhavya Siddappa
 
Android overview
Android overviewAndroid overview
Android overview
Has Taiar
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidJindal Gohil
 
Introduction to Android
Introduction to AndroidIntroduction to Android
Introduction to Android
Jindal Gohil
 
Android Basic
Android BasicAndroid Basic
Android Basic
Nirav Ranpara
 
Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspective
Gunjan Kumar
 
Android 1-intro n architecture
Android 1-intro n architectureAndroid 1-intro n architecture
Android 1-intro n architecture
Dilip Singh
 
Introduction to Android Development Part 1
Introduction to Android Development Part 1Introduction to Android Development Part 1
Introduction to Android Development Part 1
Kainda Kiniel Daka
 
1 introduction of android
1 introduction of android1 introduction of android
1 introduction of android
akila_mano
 
Android development-tutorial
Android development-tutorialAndroid development-tutorial
Android development-tutorial
ilias ahmed
 
Ch1 hello, android
Ch1 hello, androidCh1 hello, android
Ch1 hello, androidJehad2012
 
Android deep dive
Android deep diveAndroid deep dive
Android deep dive
AnuSahniNCI
 
Getting started with android programming
Getting started with android programmingGetting started with android programming
Getting started with android programming
PERKYTORIALS
 
Android Deep Dive
Android Deep DiveAndroid Deep Dive
Android Deep Dive
Marko Gargenta
 
Google android white paper
Google android white paperGoogle android white paper
Google android white paperSravan Reddy
 
Getting started with android
Getting started with androidGetting started with android
Getting started with android
amitgb
 

Similar to PPT Companion to Android (20)

Android In A Nutshell
Android In A NutshellAndroid In A Nutshell
Android In A Nutshell
 
Android Anatomy
Android  AnatomyAndroid  Anatomy
Android Anatomy
 
Android overview
Android overviewAndroid overview
Android overview
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Introduction to Android
Introduction to AndroidIntroduction to Android
Introduction to Android
 
Introduction to Android Environment
Introduction to Android EnvironmentIntroduction to Android Environment
Introduction to Android Environment
 
Android Basic
Android BasicAndroid Basic
Android Basic
 
Android
Android Android
Android
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
 
Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspective
 
Android 1-intro n architecture
Android 1-intro n architectureAndroid 1-intro n architecture
Android 1-intro n architecture
 
Introduction to Android Development Part 1
Introduction to Android Development Part 1Introduction to Android Development Part 1
Introduction to Android Development Part 1
 
1 introduction of android
1 introduction of android1 introduction of android
1 introduction of android
 
Android development-tutorial
Android development-tutorialAndroid development-tutorial
Android development-tutorial
 
Ch1 hello, android
Ch1 hello, androidCh1 hello, android
Ch1 hello, android
 
Android deep dive
Android deep diveAndroid deep dive
Android deep dive
 
Getting started with android programming
Getting started with android programmingGetting started with android programming
Getting started with android programming
 
Android Deep Dive
Android Deep DiveAndroid Deep Dive
Android Deep Dive
 
Google android white paper
Google android white paperGoogle android white paper
Google android white paper
 
Getting started with android
Getting started with androidGetting started with android
Getting started with android
 

Recently uploaded

FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
Abida Shariff
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
CatarinaPereira64715
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 

Recently uploaded (20)

FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 

PPT Companion to Android

  • 1.  
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.  
  • 7.
  • 8.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15. Android applications are compiled to Dalvik byte code Write app in Java Compiled in Java Transformed to Dalvik byte code Linux OS Loaded into Dalvik VM
  • 16. Android SDK  ADT: Android Development Tool, an Eclipe plugin  Two debuggers  adb : Android Debug Bridge  ddms : Dalvik Debug Monitor Server  aapk : Android Application package tool  All resources are bundled into an archive, called apk file.  dx : java byte code to Dalvik executable translator
  • 17. Differences between Smart Phones Feature Android Windows mobile BlackBerry company Google Microsoft RIM OS family Linux Windows Mobile OS Languages Java Visual C++ C++ SDK Platform Multiplatform dependent dependent Face book Yes Yes Yes Multitasking Yes limited limited
  • 18. Differences between Apple and Android Specification Apple Android Ownership Apple Proprietary Google open Source Compatible Access Technology 3G,3.5G,Wi-Fi,Bluetooth 2G,3G,3.5G and 4G(GSM , CDMA,Bluetooth,Wi-Fi, and WiMAX) Compatible Devices iPod , iPod Touch, iPhones Any Devices Messaging SMS , MMS ,email SMS , MMS , email and C2DM Web Browser Safari Open source Web kit layout engine coupled with Chrome’s V8 JavaScript engine Connectivity Wi-Fi, Bluetooth Wi-Fi, Bluetooth and NFC Multitasking Supported Supported Other device connectivity (Internet) Bluetooth (Internet Tethering) Hotspot feature with Wi-Fi
  • 19. Differences between Apple and Android Specification Apple Android Chrome to phone Not supported Supported 3D Google Map Not Yet Supported Email Attachments Single file only Multiple files Google Talk Web browser chat GTalk Specific Client and Video Supported Hardware Vendors Apple Samsung,Motorola,LG,Sony Ericsson, Dell,Huawei,HTC 3rd Party Branded OS No Supported Adobe Flash Support Not Supported Supported
  • 20. Android applications have common structure Views such as lists, grids, text boxes, buttons, and even an embeddable web browser Content Providers that enable applications to access data from other applications (such as Contacts), or to share their own data A Resource Manager , providing access to non-code resources such as localized strings, graphics, and layout files A Notification Manager that enables all apps to display custom alerts in the status bar An Activity Manager that manages the life cycle of applications and provides a common navigation backstack
  • 21. Android applications have common structure Broadcast receivers can trigger intents that start an application Data storage provide data for your apps, and can be shared between apps – database, file, and shared preferences (hash map) used by group of applications Services run in the background and have no UI for the user – they will update data, and trigger events Intents specify what specific action should be performed Activity is the presentation layer of your app: there will be one per screen, and the Views provide the UI to the activity
  • 22. Replacing & Reusing Components GMail Contacts Home Blogger Chat Client component makes a request for a specific action “ Pick photo” Picasa System picks best component for that action New components can use existing functionality Blogger Photo Gallery
  • 23. There is a common file structure for applications code images files UI layouts constants Autogenerated resource list
  • 24.
  • 25. Project Properties Project Name This is the name of the directory or folder on your computer that you want to contain the project. Package Name This is the package namespace (following the same rules as for packages in the Java programming language) that you want all your source code to reside under. This also sets the package name under which the stub Activity will be generated. The package name you use in your application must be unique across all packages installed on the system; for this reason, it's very important to use a standard domain-style package for your applications. In the example above, we used the package domain &quot;com.chicagoandroids&quot;. Activity Name This is the name for the class stub that will be generated by the plug-in. This will be a subclass of Android's Activity class. An Activity is simply a class that can run and do work. It can create a UI if it chooses, but it doesn't need to. Application Name This is the human-readable title for your application.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67. Tasks and Back Stack
  • 68.
  • 69. Application Life Cycle (1) System Process Home Process Home Mail Message Browser Map Mail Process Browser Process Map Process
  • 70. Application Life Cycle (2) System Process Home Process Home Map Browser Message Mail Map Process Browser Process Mail Process
  • 71. Intents & Intent Filters
  • 72.
  • 73.
  • 74.
  • 75.
  • 77.
  • 78.
  • 79.
  • 80.
  • 81.
  • 82.
  • 83.
  • 84.
  • 85.
  • 87.
  • 88.
  • 89.
  • 90.
  • 91.
  • 92. Intent Filters Intent Resolution
  • 93.
  • 94.
  • 95.
  • 96.
  • 97.
  • 98.
  • 99.
  • 100.
  • 101.
  • 102. Intent Resolution – Special Use Cases
  • 103.
  • 104.
  • 105. User Interface In Android
  • 106.
  • 107.
  • 108.
  • 109.
  • 110.
  • 111.
  • 112.
  • 113.
  • 114.
  • 115.
  • 116.
  • 117.
  • 118.
  • 119.
  • 120.
  • 121.
  • 122.
  • 123.
  • 124. Linear Layout fill_parent fill_parent Some Button... fill_parent wrap_content
  • 125.
  • 126.
  • 127.
  • 129.
  • 130.
  • 131.
  • 132.
  • 133.
  • 134.
  • 135.
  • 136. LinearLayout LinearLayout vertical LinearLayout horizontal weight=0.5 weight=0.5
  • 137.
  • 138. RelativeLayout toRightOf 1 1 parentTop parentLeft layout_below button1 2 parentBottom toRightOf 1
  • 139. RelativeLayout : LayoutParams @+id/green @+id/red android:layout_above=&quot;@id/green&quot; android:layout_below=&quot;@id/red&quot; @+id/green @+id/red android:layout_toLeftOf=&quot;@id/green&quot; android:layout_toRightOf=&quot;@id/red&quot;
  • 140. RelativeLayout : LayoutParams @+id/red @+id/red @+id/green android:layout_alignBottom=&quot;@id/red&quot; @+id/green android:layout_alignTop=&quot;@id/red&quot; @+id/green android:layout_alignLeft=&quot;@id/red&quot; @+id/green android:layout_alignRight=&quot;@id/red&quot;
  • 141. RelativeLayout : LayoutParams android:layout_alignParentTop=&quot;true&quot; android:layout_alignParentLeft=&quot;true&quot; android:layout_alignParentBottom=&quot;true&quot; android:layout_alignParentRight=&quot;true&quot; parent @+id/red @+id/red
  • 142.
  • 143.
  • 144.
  • 145.
  • 146.
  • 148.
  • 149.
  • 150.
  • 151.
  • 152.
  • 154.
  • 155.
  • 156. Adapting to Display Orientation
  • 157.
  • 158. Adapting to Display Orientation ANCHORING VIEWS LANDSCAPE PORTRAIT
  • 159.
  • 160.
  • 161.
  • 162.
  • 163.
  • 164.
  • 165.
  • 166.
  • 167.
  • 168.
  • 169.
  • 170.
  • 171.
  • 172.
  • 173.
  • 174.
  • 175.
  • 176.
  • 177. Menu Composition Plus Home Pre Next <option menu> Sub1 Sub2 Hi Hola Hello <sub-menu> <context menu from EditText> Long press in EditText
  • 178.
  • 179.
  • 180.
  • 181.
  • 182.
  • 183.
  • 184.
  • 185.
  • 186.
  • 187.
  • 188.
  • 189.
  • 190.
  • 191.
  • 192.
  • 193.
  • 194.
  • 195.
  • 196.
  • 197.
  • 198. Creating an Alert Dialog
  • 199.
  • 200.
  • 201.
  • 202.
  • 203.
  • 204.