+ All Categories
Home > Documents > Android Training

Android Training

Date post: 18-Feb-2016
Category:
Upload: jola
View: 26 times
Download: 0 times
Share this document with a friend
Description:
Android Training. Nelson To. PreInstall Components . Android SDK • http://code.google.co... Java Standard Development Kit (JDK) version 5.0/6.0 (download) http://www.oracle.com... If you already have installed JDK 5.0/6.0, you can skip this. Eclipse Ganymede • http://eclipse.org/do... - PowerPoint PPT Presentation
24
Android Training Nelson To
Transcript
Page 1: Android Training

Android Training

Nelson To

Page 2: Android Training

PreInstall Components

• Android SDK • http://code.google.co... • Java Standard Development Kit (JDK) version 5.0/6.0 (download)

http://www.oracle.com...  o If you already have installed JDK 5.0/6.0, you can skip this.

• Eclipse Ganymede • http://eclipse.org/do...  •  Eclipse ADT Plugin • https://dl-ssl.google...

Page 3: Android Training

What is Android

• Android is not an operating system • Android is build on top of Linux Kernel• Android is not equivalent to Linux Kernel• Android is an open source• Android devices sales 160,000 per day

Page 4: Android Training

Android and Java

• Android does not use the standard JVM• Android own its own JVM(Dalvik)• Android Dalvik vs standard JVM

o register-based vs stack-basedo more efficient and compact implementationo different set of java libraries than standard java libraries

Page 5: Android Training

Android FrameWork Stack

 

Page 6: Android Training

Android Linux Kernel

• Hardware abstraction layer • Memory Management• Process Management• Networking• ...

Page 7: Android Training

Android Native Libraries

• Bionic• Surface Manager• 2D and 3D grahics• Media codecs• SQLite• WebKit• ...

Page 8: Android Training

Android Framework

• ActivityManager• Content providers• Resource manager• Location Manager• Notification Manager• ...

Page 9: Android Training

Android Application

• Android applicationso google mapso facebook o twittero ...

Page 10: Android Training

AndroidSDK

• Tools• Docs• Platforms

o Android XX Data Skins Images Samples

• Add-onso Google API

Page 11: Android Training

Android Process and Thread

• Linux process per application• One thread per process

o UI Threado manage Looper message

Page 12: Android Training

Android Application Components

• Activity• Service• Broadcast receiver• Content provider

Page 13: Android Training

Android Activity

• a single, focused thing that the user can do• takes care of creating a window for user• presentation to the user 

o full-screen windowso floating windowso embedding inside of another activity

• lifecycleo void onCreate(Bundle savedInstanceState) o void onStart()  o void onRestart()  o void onResume()  o void onPause()  o void onStop()  o void onDestroy()

Page 14: Android Training

Android Service

•  to perform a longer-running operation while not interacting with the user

• can be started and stopped• doesn't have UI• run by activities• implicit Service (binding service)• explicit Service (start service) • lifecycle

o void onCreate()  o void onStart(Intent intent)  o void onDestroy()

Page 15: Android Training

Android Content Provider

• store and retrieve data and make it accessible to all applications• to share data across applications

Page 16: Android Training

Android Broadcast Receiver

• receive intents sent by sendBroadcast()• two type of broadcasts

o Normal broadcasto Ordered broadcast

Page 17: Android Training

Android Activity LifeCycle

Page 18: Android Training

Android Intents

• an abstract description of an operation to be performedo actiono data

• Explicit Intents (specified a component)• Implicit Intents 

Page 19: Android Training

Hello World Project

• Projec Name• Target• Application Name• Package name• Min SDK version

Page 20: Android Training

Hello World Project

• src• gen• Android XX• res• assets

Page 21: Android Training

Hello World Project

Manifest file <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"      package="com.teach.helloworld"      android:versionCode="1"      android:versionName="1.0">    <application android:icon="@drawable/icon" android:label="@string/app_name">        <activity android:name=".helloworld"                  android:label="@string/app_name">            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>    </application>    <uses-sdk android:minSdkVersion="4" /></manifest>

Page 22: Android Training

Hello World Project

Layout file <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    ><TextView      android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text="@string/hello"    />    </LinearLayout>

Page 23: Android Training

Hello World Project

Helloworld.java package com.teach.helloworld;

import android.app.Activity;import android.os.Bundle;

public class helloworld extends Activity {    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);    }}

Page 24: Android Training

Hello World Project

R.java package com.teach.helloworld;

public final class R {    public static final class attr {    }    public static final class drawable {        public static final int icon=0x7f020000;    }    public static final class layout {        public static final int main=0x7f030000;    }    public static final class string {        public static final int app_name=0x7f040001;        public static final int hello=0x7f040000;    }}


Recommended