目录
一、安卓工程介绍
1. src文件
文件作用:
存放java代码的,有包,有文件。
2. gen文件
文件作用:
存放自动生成的文件,关心是R.java, 程序页面,按键,文本等空间的ID。
每个页面、按键和文本等组件都对应一条id,下面为 t e s t H e l l o testHello testHello 添加一套id:
在对应的id文件下自动添加一条id:
3. Android:4.4文件
文件作用:
Android:4.4: 存放安卓开发的一些库,供开发者调用
4. assets文件
文件作用:
存放一些存放一些资源,配置文件,图片。
5. bin文件
文件作用:
存放编译后会生成的一些文件,包括我们关心的apk(安装包。)
6. lib文件
文件作用:
存放一些依赖库,与Android:4.4中存放的东西类似。
7. res文件
文件作用:
drawable: 存放app程序要用到的一些图片。
layout: 存放布局文件的文件夹,一般一个activity(安卓页面)对应一个布局。
values: 存放一些参数,或者自定义控件的文件。
8. res文件
文件作用:
APP的配置权限: 网络访问权限,名片夹访问权限,相机访问权限等。
目标机器SDK版本、 APP的名字、APP的图标、配置第一个被加载,启动页面。
二、安卓工程启动过程
Laucher进程 -> mainifirst -> lauch标签的activity被加载 -> oncreat被调用 -> java关联xml布局页面 -> 显示 -> 等待用户触摸等操作
1. Lancher进程
该进程不断检测用户触摸落在哪个APP上面,落在空白处不做处理,当用户触摸某个APP或者其他元素的时候,通过Binder驱动去通知底层的一些服务框架,比如system_server会去启动APP的进程,然后APP会创建 ApplicationThread 和 ActivityThread 进程去启动Activity.onCreate。
2. mainfest
首先加载代码 mainfest ,判断用户SDK版本,加载访问权限。
然后标签 intent-filter 加载第一个要加载的页面,该标签被放在哪个 activity 里面,哪个页面就会被加载。
3. 调用oncreat
当 MainActivity 代码被调用以后,会创建子类 MainActivity 继承父类 Activity,在该子类中自动调用 onCreate() 方法创建页面,该操作类似于 Main() 函数,我们要做的一系列开发大部分会在这段代码中,但在这里是调用父类的 onCreate() 。
4. java关联xml布局页面
然后通过 setContentView() 将 .java 代码与 R.layout.activity_main 布局关联起来。
在 activity_main.xml 这里可以修改页面被加载的内容。