Android源码发开记录-持续更新

记录一些做过容易忘的源码修改开发记录,排名不分前后。

●系统UI修改,包括SystemUI

1、修改桌面壁纸:
a) 替换framework/base/core/res/res/drawable-nodip/default_wallpaper.jpg
b)替换framework/base/core/res/res/drawable-sw600dp-nodip/default_wallpaper.jpg
c)替换framework/base/core/res/res/drawable-720dp-nodip/default_wallpaper.jpg

●修改framework,增加系统方法等

1.白名单添加
如已发布的文章-Android源码开发记录中自定义系统服务,增加系统API接口等等,需要添加白名单。

编译报错信息如下

Error: out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar contains class file com/demo/demo.class, which is not in the whitelist

解决办法

文件目录./build/core/tasks/check_boot_jars/package_whitelist.txt
在白名单文件最后添加自己增加的包名

#add
com\.demo
com\.demo\..*

●新增系统应用后,加入到编译脚本内

选择 /device/<company>/ <product>/xxxx.mk,或者从 build/target/product/ 目录下选择一个被“引用”的.mk,在其中的PRODUCT_PACKAGES参数列表中添加本工程:

PRODUCT_PACKAGES :=
DeskClock
Calculator
Calendar
Camera2
Email
Demo

●修改系统属性

1.系统dpi

实际生产中硬件液晶屏分辨率可能会变化,相应的系统显示dpi就需要在系统属性build.prop中修改。
这里只了解概念和如何计算dpi。
参考文章android分辨率 尺寸 dpi换算

2.支持网络adb

service.adb.tcp.port=5555

3.修改默认时区

persist.sys.timezone=Asia/Shanghai

4.修改默认亮度等等

关键文件frameworks\base\packages\SettingsProvider\res\values\defaults.xml

5.修改默认系统NTP同步地址,次数等

frameworks/base/core/res/res/values/config.xml

●Android N以上,私有库问题

system/core/rootdir/etc/public.libraries.android.txt
需在最后加上想要被公开的so库,这样编译后的库可供各个应用使用

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容