本文截取自《itop-3568开发板Android系统和应用开发手册》
硬件平台:
Android11 预安装应用功能
在进行本章节时,需要将迅为提供的Android11源码编译通过。
Android11上的应用预安装功能,主要是指配置产品时,需要将提前准备好的第三方应用apk放进android 系统。在实际的研发过程中,经常需要将某个apk提升为系统应用。
预安装分为可卸载安装和不可卸载安装,以及卸载后恢复出厂设置后自动恢复预安装。
1 在编译完源码之后,输入以下命令,查看添加应用所需要的目录,如下图所示:
1 get_build_var TARGET_DEVICE_DIR
2 进入到这个目录下,分别新建三个文件夹,如下图所示:
这三个文件夹分别为:
preinstall //存放不可卸载应用
preinstall_del_forever //存放可卸载应用
preinstall_del //存放卸载后恢复出厂设置复原应用
3 根据需求只需将apk放在对应文件夹即可,比如将RootChecker.apk设置为不可卸载应用,那么需要放进preinstall文件夹中。如下图所示:
4 重新编译Android11源码,编译完会在相应的目录下自动生成对应名字的文件。
/home/topeet/Android11/rk_android11.0_sdk/out/target/product/rk3568_r/obj/APPS/RootChecker_intermediates 如下图所示:
5 编译完源码之后,重新烧写镜像,就会发现刚刚预安装的app,如下图所示:
2Android11设置语言和默认时区
修改文件:device/rockchip/rk356x/rk3568_r/rk3568_r.mk,添加如下内容:
1 PRODUCT_PROPERTY_OVERRIDES += \
2 persist.sys.language=zh \
3 persist.sys.country=CN \
4 persist.sys.timezone=Asia/Shanghai
修改完,保存修改,重新编译android源码。
3Android11设置系统默认不锁屏
修改frameworks/base/packages/SettingsProvider/res/values/defaults.xml文件,修改为如下所示:
- <bool name="def_lockscreen_disabled">false</bool>+ <bool name="def_lockscreen_disabled">true</bool>
修改完,保存修改,重新编译android源码。
4Android11设置系统默认不休眠
修改文件:
device/rockchip/rk356x/overlay/frameworks/base/packages/SettingsProvider/res/values/defaults.xml文件,如下图所示:
- <integer name="def_screen_off_timeout">60000</integer>
+<integer name="def_screen_off_timeout">0x7fffffff</integer>
修改完,保存修改,重新编译android源码。