框架图
Android 四大组件
- 活动(Activity)
- 服务(Service)
- 内容提供者(Content Provider)
- 广播接收器(Brocast Receiver)
Activity
- 组件注册
- 事件监听
- 多线程
- 启动活动
- Intent
- 布局文件
- Toast
- Log
- 活动栈
Service 生命周期
Android 权限
普通权限:在AndroidManifest.xml文件中声明。
敏感权限:按组划分,运行时申请。
Android 存储
- 文件(内部,外部):
- sharedpreference:键-值对。
- sqlite
apk打包过程
apk结构
-
META-INF 文件夹:
- MANIFEST.MF:清单文件(Manifest file)。
- CERT.SF:清单文件列表的SHA-1值。
- CERT.RSA:公钥证书和对CERT.SF的签名。
class.dex 文件: classes文件通过DEX编译后的文件格式,用于在虚拟机上运行的主要代码部分。
AndroidManifest.xml:编译后的AndroidManifest.xml文件。
resources.arsc:资源索引表。
res:编译后的资源文件。
asset:资源文件。
lib:本地(native)库。
静态分析工具
反编译dex:dex2jar,enjarify,baksmali
反编译xml资源:AXMLPrinter
修改resources.arsc:AndroidResEdit
综合类工具:apktool
本地(native)代码分析工具:ida