Sie sind auf Seite 1von 24

Getting started with Android

Introduction to android application development


session by By @AlSayedGamal #GMansoura

Agenda
Whats Android. [Business] No really, whats android.[Technology] Android internals. Hello, Android.

1.Whats Android

Android is software stack for mobile devices that includes an operating system, middleware and kep applications.

History
Aug 2005 Google acquired Android. Nov 2007 OHA* announced that Android SDK is available. Sept 2008 HTC and T-Mobile announced G1 Oct 2008 Android SDK 1.0 Android Market goes live G1 is available in the retail store.

*OHA is (Open Handset Alliance) including top OEM and operators {Motorolla, intel, htc, T-Mobile, Samsung, LG, Google, etc..

Software

t Manufacturers

OHA Open Handset Manufacturers Handset Alliance


Mobile Operators
Handset Manufacturers

Software Mobile Operators

Semiconductor

Software Software Commercialization

Mobile Operators
Semi-conductors operator
Semiconductor

Commercialization

Commercialization Handset Manufacturers

Semiconductor Mobile Operators Commercialization

Software Commercialization Software


OEM

Dec 2011

OS Shares worldwide*
1% 1% 2%
Android iOS Bada Others Symbian RIM Microsoft

11% 15%

52%

17%

*According to Gartner Nov 2011

Devices (not telephones)


Cellphones Tablets TV more

2.No really, whats android


Android is based on the almighty linux kernel. Android comes with great libraries and APIs for your special hardware to make full use of you device. Android has rich development tool set including emulator, debugging tools, GUI composer,etc.. Android is ready for i18n.

Technical prerequisites for Android development.


Java* = Java SE - Swing - AWT - reection + some API(s). HTML5 is an option (nice option if you are going cross platform). Others (nice for RAD and cross platform).

*We are interested in that option today

Android the platform


Android the OS is the largest part but its not everything. Android emulator and AVD. DVM (Dalvik Virtual Machine). ADB (Android Debug Bridge).

3.Android Internals

Android internals
Applications
Home Contacts Phone Browser

...

Application Framework
Activity Manager Package Manager Window Manager Telephony Manager Content Providers Resource Manager View System Location Manager Notication Manager GTalk Service

Libraries
Surface Manager OpenGL | ES SGL Media Framework FreeType SSL SQLite WebKit libc

Android Runtime
Core Libraries Dalvik Virtual Machine

Linux Kernel
Display Driver USB Driver Camera Driver Keypad Driver Bluetooth Driver WiFi Driver Flash Memory Driver Audio Drivers Binder (IPC) Driver Power Management

Everything is an application

Your app is rst class citizen

Android development tools


Eclipse ADT plugin DDMS AVD more..

Application building blocks


Activity: Can be considered a screen of your app. Intent / IntentReciever: set and respond to notications ot status and can pass messages between activities. Service: background tasks ContentProvider: Enable applications to share data

Application Directory Structure


src : your code lives here. res : your layout and resource les are here. gen: by name its generated content mostly it maps to layouts and resources. bin : output les and APK (Android Package) executable le. manifest.xml: general conguration le.

The Android Package

meet the

APK

The APK
le.apk
|--AndroidManifest.xml |-- META-INF | |-- CERT.RSA | |-- CERT.SF | `-- MANIFEST.MF |-- classes.dex |-- res | |-- drawable | | `-- icon.png | `-- layout | `-- main.xml `-- resources.arsc

4.Hello, Android Application(s)

5. What next?
Giving layout types and drawables more focus. Developing application as basic as moving data between activities and accessing service or two. Background services and dealing with system intents. Using contacts, dictionary and other content providers. Using database and generally persistence data layer. Dealing with internet application. Practice, practice, practice, practice ..!

Summary
Android is now and future. Its opensource and fun. Android stack and rich development tools. Everything is an application and your application is 1st class citizen. Android application development terminology. Android development road map.

Questions & Answers

Thank you!

Das könnte Ihnen auch gefallen