Framework的范围
Framework负责APPLICATION FRAMEWORK、ANDROID RUNTIME和LIBRARIES三部分。
a) 系统Manager和Service相关内容
b) 系统接口和jni相关内容
c) 系统功能相关内容(watchdog、vold、binder等)
d) 虚拟机dalvik、art
e) 系统so库相关内容
f) CTS、GTS等预分析
g) Monkey预分析
h) 系统稳定性问题(系统ANR、冻屏、重启、蓝屏等)
i) 系统性能问题
framework基础
语言基础:Java、C++、C
技术基础:进程间通信,多线程,jni,linux相关知识,binder
Android代码管理
代码结构
framework开发工作方式与应用开发的工作方式是完全不同的,framework开发是基于Android源代码进行的开发,版本管理主要使用:git,repo两种工具。如果想要学习framework开发,必须需要下载一套Android源码。官方下载地址【参考、需翻墙】: https://source.android.com/source/downloading.html,具体的下载编译调试代码的方式可以参考老罗的博客视频,讲解的非常清楚,附上地址(http://0xcc0xcd.com/p/index.php),感谢老罗。
当下载完成代码后首先了解一下Android源代码的结构:
├── bionic android上实现的libc库
├── bootable 存放可启动项,如recovery、bootloader等
├── build android编译系统所用到的make文件及其它工具
├── cts android兼容性测试
├── dalvik dalvik虚拟机
├── development 与开发相关的一些东西
├── device 存放需要适配的设备信息
├── external 第三方库
├── frameworks framework部分
├── hardware 硬件相关代码
├── kernel kernel相关代码
├── libcore android上实现的Java基础库
├── Makefile
├── ndk
├── out 编译输出目录
├── packages 包含系统应用、壁纸应用、内容提供者、输入法等
├── prebuilt 预编译好的工具
├── sdk sdk相关内容
├── system 操作系统层次的一些可执行程序和配置文件
├── u-boot 用于引导linux启动的u-boot
而framework开发主要要了解的就是frameworks下面的内容。
代码编译
当把代码下载完毕后需要对源代码整体进行编译,具体方法如下:
1.source build/envsetup.sh
读取各个board的vendorsetup.sh
2.lunch
去选择要编译的对象
3.完整系统编译,输出到out/target/product/
make -j4(j4为使用四个线程同时编译)
4.如果要单编某个模块,就是用如下命令来编译需要的模块。
编译bootloader,
make bootloader
编译kernel生成boot.img,
make bootimage
编译system生成system.img,
make systemimage
编译userdata生成userdata.img,
make userdataimage
编译recovery生成recovery.img,
make recoveryimage
当编译好对应的image后,可以使用fastboot将image烧到手机里面:
如何进入fastboot:
开机状态下执行adb reboot bootloader
关机状态组合键:home+power
1.检查连接设备
Fastboot devices
2.烧写system.img
Fastboot flash system system.img
3.烧写boot.img(recovery)
fastboot flash boot boot.img(recovery.img)
4.烧写bootloader
Fastboot flash 2ndbl u-boot.bin
- 分享
- 举报
-
浏览量:2296次2020-07-18 18:11:19
-
浏览量:3145次2020-07-13 17:40:25
-
浏览量:1403次2020-01-09 11:42:04
-
浏览量:1730次2021-11-23 09:53:47
-
浏览量:2380次2023-04-19 09:14:26
-
浏览量:2444次2019-11-21 13:49:33
-
2023-06-07 15:03:45
-
浏览量:1483次2019-11-20 14:17:04
-
浏览量:3097次2020-07-09 18:51:25
-
浏览量:2601次2020-08-03 13:36:13
-
浏览量:1338次2019-12-28 08:58:59
-
浏览量:2854次2020-08-03 13:38:16
-
2020-08-03 13:37:42
-
浏览量:2738次2018-04-04 10:11:56
-
浏览量:5911次2021-03-04 17:28:57
-
浏览量:1679次2020-08-03 13:34:42
-
浏览量:1873次2020-08-03 12:01:28
-
浏览量:2095次2020-08-03 13:33:48
-
2021-08-19 16:20:52
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
TT_123456789
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明