android - 在 AOSP 中对系统服务进行更改后构建哪个目标?
问题描述
我正在尝试验证我在 Activity Manager 服务中所做的一个小更改(主要是我添加的日志)。我正在使用 android-8.1.0_r42 aosp 版本并使用它的模拟器。
- 我正在使用英文版本。
- 我已经做了一个模块 make (
mm
) 然后,make services
它生成了 services.jar、services.odex 等。但是,我无法在模拟器上重新安装系统分区(使用的命令:mount -o rw, remount /system
,在 ADB shell 上,但是做一个由于读取唯一分区,任何生成的服务二进制文件的 push(adb push) 都失败)。 - 所以我通过执行 - 重新生成了 system.img
make snod
。但是,我的更改并未在生成新 system.img 后启动的模拟器实例中使用。
有没有一种方法可以验证我的更改而无需进行顶层完整构建,这需要很长时间?
解决方案
可能是启用了DM-verity并阻止您在重新挂载后写入系统分区的情况。假设您使用的是 userdebug 版本,请尝试以下操作:
- 亚行根
- adb 禁用验证
- 亚行重启
- 亚行根
- adb 重新挂载
现在您应该能够将文件推送到重新安装的分区而不会出现只读错误。
推荐阅读
- intellij-idea - 如何在 intelliJ 中打开 git repo 的特定分支
- authentication - .NET Core Web 应用程序的 Cognito 身份验证
- mysql - MySql docker 容器权限问题
- java - 如何在TestNG中通过各种@Test使用@Before测试变量
- java - 使用 MongoDB Java 驱动程序时未插入 LocalDate
- python - 使用 requests_html 打开后在站点上运行 js 控制台命令
- c# - 设置“程序集中性语言”会破坏 GUI
- mongodb - MongoDB - 阅读关注 - 什么是“多数提交点”?
- python - 从抓取的数据中删除空格/空格/换行符
- ios - RXSwift - RxCollectionViewSectionedReloadDataSource - 拖放移动(重新排序)