【问题标题】:How to make system partition in AVD in emulator writable如何在模拟器中使AVD中的系统分区可写
【发布时间】:2017-07-27 14:19:34
【问题描述】:

这是一个相当古老的问题,但令我惊讶的是,没有一个解决方案对我有用。我需要在为 Android 7.0 版创建的 AVD(在模拟器中)中将 android 应用程序作为系统应用程序运行。为此,我想将 apk 文件推送到系统分区,但我不断收到错误消息,说它是只读文件系统。我在 stackoverflow 上发现了许多类似的问题,但没有什么对我有用。我在 root 中重新启动了 adb,按照类似问题的答案中的建议使用 remount 执行它,但是系统分区文件系统权限不会改变。这是一个示例会话:

mvsagar@mvslt:~/sw/android_sdk/platform-tools$ ./adb root
restarting adbd as root
mvsagar@mvslt:~/sw/android_sdk/platform-tools$ ./adb remount
remount succeeded
mvsagar@mvslt:~/sw/android_sdk/platform-tools$ ./adb push /home/mvsagar/projects/AndroidStudioProjects/LcnApps/app/LCNUE.apk  /system/app/LCNUE.apk
adb: error: failed to copy '/home/mvsagar/projects/AndroidStudioProjects/LcnApps/app/LCNUE.apk' to '/system/app/LCNUE.apk': couldn't create file: Read-only file system

我尝试使用 adb shell 手动重新挂载读/写(rw)选项,但重新挂载失败。

有没有办法获得系统分区的读/写权限?

我的开发环境是 Ubuntu 上的 Android Studio。

【问题讨论】:

    标签: android avd


    【解决方案1】:

    就我而言,我使用 avd(基于:Android 8.0 (Oreo) Tag/ABI: google_apis/x86_64)。

    $ emulator -avd Nexus_5X_API_26_APIs -writable-system 
    $ adb root 
    $ adb remount
    

    那么,/system 是可写的。

    $ adb push somefile /system/bin/ 工作。

    【讨论】:

    • 安卓工具中有模拟器命令吗?
    【解决方案2】:

    使用 Q 时,这是唯一适合我的解决方案:https://stackoverflow.com/a/64397712/1898527

    在此添加完成步骤(感谢原作者):

    > emulator -avd Pixel_3a_XL_API_29 -writable-system
    > adb shell avbctl disable-verification
    > adb disable-verity
    

    现在重新启动您的模拟器,以使更改生效。

    > adb root
    > adb remount
    > adb shell "su 0 mount -o rw,remount /system"
    

    注意:您需要一个没有 Google Play 的模拟器,否则这将不起作用。您可以按照此处描述的步骤获取它:https://stackoverflow.com/a/45668555/1898527

    【讨论】:

    • 美丽。它对我有用!直到我为“Q Emulator”看到它之前,其他解决方案都不起作用。谢谢!
    【解决方案3】:

    使用 genymotion 模拟器,速度更快、重量更轻且预植根。 (也就是说你可以访问系统目录)

    【讨论】:

      【解决方案4】:

      为了其他人的利益,@Ishamael 很久以前在另一个 stackoverflow 问题 Read only file system on Android 中回答了这个问题

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-04-01
        • 2012-03-24
        • 2011-01-15
        • 1970-01-01
        • 2017-12-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多