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之学习笔记的更多相关文章

  1. Android自动化学习笔记:编写MonkeyRunner脚本的几种方式

    ---------------------------------------------------------------------------------------------------- ...

  2. Android自动化学习笔记之MonkeyRunner:官方介绍和简单实例

    ---------------------------------------------------------------------------------------------------- ...

  3. android开发学习笔记000

    使用书籍:<疯狂android讲义>——李刚著,2011年7月出版 虽然现在已2014,可我挑来跳去,还是以这本书开始我的android之旅吧. “疯狂源自梦想,技术成就辉煌.” 让我这个 ...

  4. Android动画学习笔记-Android Animation

    Android动画学习笔记-Android Animation   3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中 ...

  5. Android 数字签名学习笔记

    Android 数字签名学习笔记 在Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作者和在应用程序之间建立信任关系,如果一个permission的pro ...

  6. Android:日常学习笔记(9)———探究持久化技术

    Android:日常学习笔记(9)———探究持久化技术 引入持久化技术 什么是持久化技术 持久化技术就是指将那些内存中的瞬时数据保存到存储设备中,保证即使在手机或电脑关机的情况下,这些数据仍然不会丢失 ...

  7. Android:日常学习笔记(9)———探究广播机制

    Android:日常学习笔记(9)———探究广播机制 引入广播机制 Andorid广播机制 广播是任何应用均可接收的消息.系统将针对系统事件(例如:系统启动或设备开始充电时)传递各种广播.通过将 In ...

  8. Android:日常学习笔记(8)———开发微信聊天界面

    Android:日常学习笔记(8)———开发微信聊天界面 只做Nine-Patch图片 Nine-Patch是一种被特殊处理过的PNG图片,能够指定哪些区域可以被拉升,哪些区域不可以.

  9. Android:日常学习笔记(8)———探究UI开发(5)

    Android:日常学习笔记(8)———探究UI开发(5) ListView控件的使用 ListView概述 A view that shows items in a vertically scrol ...

随机推荐

  1. springBoot actuator监控配置及使用

    准备环境: 一个springBoot工程 第一步:添加以下依赖 <dependency> <groupId>org.springframework.boot</group ...

  2. 深入理解Java内存模型——volatile

    volatile的特性 当我们声明共享变量为volatile后,对这个变量的读/写将会非常特别. 理解volatile特性的一个好方法是:把对volatile变量的单个读/写,看成是使用同一个监视器锁 ...

  3. Java二维数组的概念和使用方法

    二维数组 数组的数组---二维数组的每一个元素是一个一维数组 定义格式 数据类型[][] 数组名 = new 数据类型[二维数组的长度/包含的一维数组的个数][每个一维数组的长度]; int[][] ...

  4. J2EE: JCA (Java Connector Architecture) [转]

    JCA (J2EE 连接器架构,Java Connector Architecture)是对J2EE标准集的重要补充.因为它注重的是将Java程序连接到非Java程序和软件包中间件的开发.连接器特指基 ...

  5. 微信小程序——微信支付

    这个讲起来也就比较麻烦一点,因为需要的不仅仅是咱们代码上的技术,嘿嘿! 先整理一下思路.如果想做微信支付: 1.现有一个公司账户(非个人账户),并且实名认证过的. 2.微信号 必须开通微信支付功能. ...

  6. 什么是JWT(JSON WEB TOKEN)

    转自于:http://www.jianshu.com/p/576dbf44b2ae 什么是JWT Json web token(JWT)是为了网络应用环境间传递声明而执行的一种基于JSON的开发标准( ...

  7. Python环境以及编辑器

    1.Python环境搭建 http://blog.csdn.net/qq_29663071/article/details/70158204 备注:a.个人感觉 安装路径为自己选择的 位置和特性 b. ...

  8. ed命令

  9. 【java】java.lang.Math:public static long round(double a)和public static int round(float a)

    package math; public class TestMath_round { public static void main(String[] args) { System.out.prin ...

  10. Java.util.Map排序输出

    在java的众多Map实现中,Map基本上是不能保证顺序的(LinkedHashMap可以保证插入顺序或者访问顺序,TreeMap默认按照key升序但可以自定义Comparator),在开发过程中当数 ...