Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android &引用;“亚洲开发银行根”;命令返回";adbd不能在生产版本中以根用户身份运行;甚至在模拟器上?_Android_Adb - Fatal编程技术网

Android &引用;“亚洲开发银行根”;命令返回";adbd不能在生产版本中以根用户身份运行;甚至在模拟器上?

Android &引用;“亚洲开发银行根”;命令返回";adbd不能在生产版本中以根用户身份运行;甚至在模拟器上?,android,adb,Android,Adb,我试图在模拟器上运行adb root命令;这是我唯一连接的设备: $ adb devices List of devices attached emulator-5554 device 但是,我收到以下错误消息: $ adb root adbd cannot run as root in production builds 我试着按照这个答案来解决我的问题: 按设计,adb根命令仅在开发版本中工作(即,默认情况下,eng和userdebug的ro.debuggable=1)。或者,您可以

我试图在模拟器上运行
adb root
命令;这是我唯一连接的设备:

$ adb devices
List of devices attached
emulator-5554   device
但是,我收到以下错误消息:

$ adb root
adbd cannot run as root in production builds
我试着按照这个答案来解决我的问题:

按设计,adb根命令仅在开发版本中工作(即,默认情况下,eng和userdebug的ro.debuggable=1)。或者,您可以使用修改后的adbd二进制文件(不检查ro.debugable)

但是,我不清楚如何将构建更改为开发构建而不是生产构建

更新 我发现了一些额外的说明,这些说明使我相信,要使它工作,您需要使您的模拟器成为一个“可写系统”(cf.)。然而,如果我尝试

$ emulator -avd Nexus_5X_API_28 -writable-system
emulator: WARNING: System image is writable
emulator: ERROR: Running multiple emulators with the same AVD is an experimental feature.
Please use -read-only flag to enable this feature.

我不确定如何解析这个错误消息;这是否意味着系统映像已经可以写入?

我检查了谷歌提供的一些模拟器。 它们都是用户二进制,而不是工程师二进制。 您可以使用“adb shell”命令自己检查它。 如果命令行以“#”开头,则为工程师构建。如果以“$”开头,则为用户生成。例如:

  • Jackpot2lt:/#=>工程师建造
  • jackpot2lte://$=>用户构建
只有工程师生成才能授予您root权限。您不能将用户构建更改为工程师构建,但可以“根”它。
请查看更多信息。

选择一个未标记为“Google Play”的仿真器系统映像


从.

实际上,我在
adb shell中看到一个
$
,表明它是一个用户构建。然而,从上面的评论来看,似乎还有一个
userdebug
build?您能否检查这是否相关: