在看Android代码运行机制时,经常会遇到一些不太理解的词,在此把我遇到的一些词以及理解整理下:
1、Android系统,整体来讲它是属于消息驱动型类型,简单说就是系统中应用的各个组件都是靠消息来交互,系统中会有一个主线程会循环执行Looper中的消息队列。
2、编译时:只有编译成功后才能生成可执行代码,简单理解就是语法要符合Android系统的要求,如数学中的运算法则。
3、运行时:简单理解就是当代码执行到那行代码时,(如Android系统中findViewById,只要存在相应id就不会报错,因为它是再运行时才会检查Id是否存在)。Android中运行时检查,运行时绑定都是这个意思。
4、Android 组件与进程:Android的组件虽然在进程中运行,但是进程被杀死,组件依然可以存活,这就是有时候在用360安全卫士查看应用时会出现0进程运行,1服务正在运行的怪象。由于Android为了提高应用的响应速度,Android组件可以独立与进程存在(它有一些列Manageer类来控制)。
5、Android系统基于Linux2.6,但不属于Linux系统的分支,所以它是开发的不是开源的。
6、编译时会将xml文件编译成2进制格式,生成资源符号为后面生成R.java文件,每个id都是4位16进制的数,高字节位代表包名,次高字节代表所属类型(String,int,View等等),后两位代表具体id;
时间: 2024-10-19 10:47:17