这块开发板据官方技术人员说,因为开启了内存优化,所以一般的应用即使注册了引导广播接收器,也无法正常自启动。
要恢复开机应用自启动,有两种方法:
1: adb连接开发板,关闭内存优化选项
首先,通过USB-OTG接口连接开发板,然后在安卓系统的USB设置,勾选连接到PC。
可以直接参考官方Wiki:
http://wiki.t-firefly.com/zh_CN/ROC-RK3328-CC/android_adb.html
USB成功连接到设备ADB后,获取root权限,并重新挂载system分区,然后进入shell:
adb root adb remount adb shell
接着在adb shell下使用busybox vi命令编辑 /system/build.prop 文件:
busybox vi /system/build.prop
找到 ro.mem_optimise.enable=true 行,改为 ro.mem_optimise.enable=false 。
然后保存重启系统即可。
2: 修改安卓系统源码,重新编译固件
跟官方反馈过这个问题后,官方安卓7.1的仓库的最新提交已经解决了该问题,可以直接看提交日志:
https://gitlab.com/TeeFirefly/RK3328-Nougat/commit/5c9441afce196d5370a163ba6590e830d11a1575