Transcript

Ahmed AliMobileSq.net Founder

@ahmed_aly

MOBILE OPERATING SYSTEMS

ANDROID IS NO.1

AGENDA

1 – What is “ Android? “ 2 – Android History

3 – Android Versions 4 – Why Android!!?

5 – Development Tools6 – Hello World

7 – Project content8 - Event Handling 9 – Android Market

WHAT IS ANDROID?

Android is an open-source software stack for mobile devices that includes an operating system,

middleware and key applications. And it is based

upon a modified version of the Linux kernel

ANDROID HISTORY

Google Inc. purchased the initial developer of the software in 2005.

from Android Inc. which was founded in Palo Alto, California, United States in October, 2003 by Andy Rubin, Rich

Miner .

SYSTEM-ARCHITECTURE

WHAT IS THAT!!!

ANDROID PLATFORM

Android 1.5 CupCake Android 1.6 Donut

Android 2.1 EclairAndroid 2.2 FroyoAndroid 2.3 Gingerbread

Android 3.0 Honeycomb , Tablet OrientedAndroid 4.0 Ice Cream Sandwich

SOME STATISTICS

WHY ANDROID!? 1 – Open Source

2 – based on Linux kernel3 – Flash Player Support

4 – Different Models5 – Reasonable prices

6 – Google Apps7 – Android Apps

CHALLENGES OF SMARTPHONE PROGRAMMING

Screens Keyboards

Pointing toolsCPU speed and Memory

WHAT YOU CAN USE IN YOUR APP?

Storage Network

GPS Phone Services

MultiMedia

DEVELOPMENT TOOLS

- Java Language - Eclipse IDE

- ADT Plug-in For Eclipse - Android SDK

ANDROID SDK

Consist of the following parts : - Android Emulator

- Command line tools - Documentations.

- example Applications.

ANDROID EMULATOR

YOUR FIRST APP “HELLO WORLD”

Install Java JDKInstall EclipseInstall ADT Plug-inDownload Android SDK and install it Now, Create your First AppCoding

PROJECT CONTENT

ANDROID APPLICATION

Activities: user-facing components that present UI to interact with.

Services: processes that work in the background and don’t have a visible background

Content Providers: components make parts of your application data available to other applications

ANDROID APPLICATION

Intents: messages created by the system or application themselves that are then passed on to any interested party.

Broadcast Receivers: These react to specific intents, and might execute an action.

MANIFEST FILE (1/6)

The <manifest>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

package="com.MobileSq.HelloWorld" android:versionCode="1"

android:versionName="1.0“ android:installLocation=“preferExternal>”

MANIFEST FILE (2/6)

The <application>

<application android:icon="@drawable/icon" android:label="@string/app_name"

android:debuggable="true>"

/<application>

MANIFEST FILE (3/6)

The <activity>

<activity android:name=".HelloWorld" android:label="@string/app_name>"

< intent-filter>

<actionandroid:name="android.intent.action.MAIN>/ "

<categoryandroid:name="android.intent.category.LAUNCHER>/ "

/< intent-filter>/<activity>

MANIFEST FILE (4/6)

The <activity>

<activity android:name=".MrNorm" android:label="@string/app_name“

android:screenOrientation=“portrait” android:configurations=”keyboard|

keyboardHidden|orientation>/”

MANIFEST FILE (5/6)

The <uses-permission>

<uses-permission android:name="android.permission.INTERNET">/

MANIFEST FILE (6/6)

The <uses-sdk>

<uses-sdk android:minSdkVersion=“3“ android:targetSdkVersion=“9>/ ”

ACTIVITY LIFE CYCLE

The Activity can be in one of three states: -Running

-Paused -Stopped

-Dead

ACTIVITY LIFE CYCLE

INPUT HANDLING (1/4)

Processing Single Touch Events:

Touch Events are passed to an OnTouchListener interface implementation that we register with a view.

The OnTouchListener interface has only a single method

Public abstract boolean onTouch(View v, MotionEvent event)

INPUT HANDLING (2/4)

Processing Single Touch Events: (Cont.)

MotionEvent.getX)(MotionEvent.getY)(MotionEvent.getAcation)(

MotionEvent.ActionDownMotionEvent.ActionMoveMotionEvent.ActionCancleMotionEvent.ActionUp

INPUT HANDLING (3/4)

Processing Key Events:

To catch key Events, we implement another listener interface, called OnKeyListenerPublic boolean onKey(View v, int keyCode, KeyEvent

event)

INPUT HANDLING (4/4)

Processing Key Events:

KeyEvent.getAction)(KeyEvent.ActionDownKeyEvent.ActionUp

KeyEvent.getUnicodeChar)(

CODING!!!

ANDROID MARKET

ANDROID MARKET

Market Is Divided into Two Parts 1 – Phone Market

2 – Web Market

ANDROID MARKET

- 25$ Registration Fee for Developer - Developer receive 70% of Each Sale - Remaining amount Goes to carriers

- Google Doesn’t Take any percentage - Website : . . .www market android com

SUMMERY

Google inc. Company

C(core) ,C++ (some third party apps), java (UI) Programmed in

2008 Initial release

Monolithic (modified Linux kernel) Kernel Type

2.3.4 Latest stable release

Open Handset Alliance Developer

Android.com Website

Java Developing language

. . .www Market android com Market

Eclipse – ADT – Android SDK Developing Tools

`

@ahmed_aly

www.MobileSq.net

MY CONTACTS

LinkedIn : :// . . / / 1http eg linkedin com in ahmedali

Facebook : Facebook.com/Ahmed.Ali.IbrahimGmail : ahmed.saraya90@gmail.comHotMail : ahmed_ali@feng.bu.edu.eg

top related