首页 > 代码库 > 深入浅出Android之学习笔记

深入浅出Android之学习笔记

1、查看启动log

[2011-01-11 14:44:21 - BMI] Android Launch!

[2011-01-11 14:44:21 - BMI] adb is running normally.

[2011-01-11 14:44:21 - BMI] Performing com.demo.android.bmi.Bmi activity launch

[2011-01-11 14:44:21 - BMI] Automatic Target Mode: Preferred AVD ‘Android2.3‘ is available on emulator ‘emulator-5554‘

[2011-01-11 14:44:21 - BMI] Uploading BMI.apk onto device ‘emulator-5554‘

[2011-01-11 14:44:21 - BMI] Installing BMI.apk...

在安装的过程中,FrameWork会根据AndroidManifest.xml注册、登录这个应用程序所建立的Activity,并实现注明会使用到的服务。

"※在安装应用程序的时候, Android 框架会根据应用程序提供的清单,将信息注册于

Android 框架的注册表中。"

[2011-01-11 14:44:28 - BMI] Success!

[2011-01-11 14:44:28 - BMI] Starting activity com.demo.android.bmi.Bmi on device emulator-5554

[2011-01-11 14:44:30 - BMI] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.demo.android.bmi/.Bmi }

通过ActivityManager启动intent

[2011-01-11 14:44:32 - BMI] Attempting to connect debugger to ‘com.demo.android.bmi‘ on port 8608

 

 

2、解读Manifest文件所传达的信息

<?xml version="1.0" encoding="utf-8"?>

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

      package="com.demo.android.bmi"

      android:versionCode="1"

      android:versionName="1.0">

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

        <activity android:name=".Bmi"

                  android:label="@string/app_name">

            <intent-filter>

                <action android:name="android.intent.action.MAIN" /> //说明这个Activity是此应用程序的入口.

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

            </intent-filter>

        </activity>

 

    </application>

    <uses-sdk android:minSdkVersion="9" />

 

</manifest> 

在应用框架中加入一个application,它的图标是drawable/icon,它的名字是string/app_name

该应用程序里面定义了一个主要的activity,当我们启动这个程序的时候,虚拟机会去寻找

定义了[android.intent.category.LAUNCHER]内容的[.Bmi]activity,并呼叫执行。

 

另外Android应用程序的运行流程,主要存在于四种载体中:

Activity/Broadcast Intent Receiver/Service/Content Provider

 

3、Android Activity

每个Activity通常负责处理一个荧幕的内容。可将Activity看成是MVC模式中的control,Activity负责管理UI,并接受事件触发。

 

4、Android Intent

Activity之间可以通过Intent实现信息的传递。

 

5、Android Debug

可通过LOG记录检查程序执行的过程和参数是否符合我们的期望。

 

6、Activity的活动周期(LifeCycle)

在Android 平台上,同一个时刻只会有一个Activity 处于活动(Active)或运行(Running)状态。

其他的Activity 都处于未启动(Dead)、停止(Stopped)、或是暂停(Pause)的状态。

技术分享

 

 
上面七个状态又可以归纳成三组
1、资源分配(create/destroy)
2、可见与不可见(start/restart/stop)
3、使用者是否直接存取屏幕(resume/stop)
 
 
 
7、Android Preferences
使用偏好设定来记住上次设定的数据,减少重复输入。

深入浅出Android之学习笔记