What is Android?
Application FrameworkDalvik virtual machineBrowser based on WebKitOptimized graphics (OpenGL ES 1.0)SQLiteFeatures
Android Architecture
SDKIDE DebuggerProfilerResource BuildingDeploymentTools
ViewsContent ProvidersResource ManagerNotification ManagerActivity ManagerApplication Framework
Layouts XML FilesCan be nestedStringsColorsArraysGUI
 IDsUsing the @+id/name syntaxResource Building  - R.javaXMLGUI
ViewsTextView, Button, EditText, RadioButton, etc.LayoutsLinearLayoutRelativeLayoutTableLayoutLayouts
Most Common<android:layout_height><android:layout_height>Wrap_content, fill_parent …Layout Parameters
A single thing the user can doIt can be reusedCan be invoked by other applicationsIt Can beFull Screen WindowFloating WindowsEmbeddedActivities
Activity Lifecycle
package com.HelloWorld;import android.app.Activity;import android.os.Bundle;public class About extends Activity {	@Override	protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.about);		}	}A typical Activity
Each applications has it own processSandboxUser IDs and File AccessPermissionsSecurity and Permissions
Intent – What you want doneIntentFilters – What an activity do or IntentReceiver doRegistered in Android ManifestIntent & IntentFilters
Enables sata sharing between the applications Querying , Modifying, Adding, DeletingHide underlying inplementationRepresented by URIscontent://media/internal/imagescontent://contacts/peopleContent Providers
Runs in backgroundMP3 player, weather service, downloadRun in application’s process or another processServices
Universal SearchAutomated BackupsPolished ApplicationsBetter PerformanceWhats Next?
http://developer.android.comhttp://www.anddev.org/XDA Developers forum for android developmentWhere to start?

Android

Editor's Notes

  • #2 Android is a software stack for mobile devices that includes an operating system, middleware and key applicationsOpen SourceSmarter phones – uptodate with current technologyJava me
  • #3 Sqlite – structured data storageMedia supportAccelormeterwifi 3g gpsbluetooth camera
  • #4 Talk about kernel – linustorvalds
  • #5 eclipse
  • #6 Content – share data across applicationsActivity – single thing user can do (full screen window , theme, group)
  • #9 Basic building blocksAbsolute layout x,yTalk about orientation
  • #12 Activity stack – ready to be runned - (already started feeling)
  • #14 Linux user id – constant to the devicePermissions – at install time granted by the package installerNo prompting in runtime
  • #15 Intent – forward navigationIntent filter – system picks the activity whose intentfilter best matches intentData –category- action
  • #16 Query data – cursorWork across processesTalk about contact application
  • #17 Compare activity – short livedMp3 player example