Android模拟器的主机文件

时间:2018-08-09 07:47:21

标签: android emulation hosts

我正在尝试为android模拟器设置hosts文件。我看到了这个建议:

 adb remount 
 adb push hosts /etc/system/hosts (most tutorials suggest
 this file) 
 adb push hosts /system/etc/hosts (some VM systems seem to
 prefer this file instead!, for me this worked)

但是当我执行adb重装时,它会写“重新安装/ superblock失败:权限被拒绝”。我要使用adb shell,但它也会写一个错误。

generic_x86:/ # mount -o remount,rw /system
mount: '/system' not in /proc/mounts
1|generic_x86:/ # mount -o rw,remount,rw /system
mount: '/system' not in /proc/mounts
generic_x86:/ # mount -o remount,ro /system
mount: '/system' not in /proc/mounts
1|generic_x86:/ # whoami
root

我两次重新安装Android Studio都没有帮助。有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

使用-writable-system标志使adb重装工作。主机已替换为新文件。

启动仿真器为: emulator.exe-可写系统-avd Nexus_5X_API_28_x86

答案 1 :(得分:0)

hosts文件位于不允许覆盖文件的目录中。因此,您应该首先将主机复制到其他位置,进行编辑,然后再复制回去。

例如,让我们研究标准仿真器:

在模拟器打开时运行以下命令:

adb devices

此命令将显示正在运行的仿真器。运行以下命令以禁用仿真器的只读行为:

adb -s emulator-5554 remount

此步骤之后,应该成功重新安装日志。然后,您应该将模拟器复制到另一个目录进行编辑:

adb -s emulator-5554 pull /system/etc/hosts ~/Desktop/

此步骤之后,它将记录有关文件传输成功的信息。现在,您可以编辑主机文件。编辑后,您应该将文件推回去。首先,您应该重新启动adb:

adb reboot

仿真器将自行重启。之后,您可以重新安装adb:

adb -s emulator-5554 remount

重新安装后,您可以向后推送主机文件:

adb -s emulator-5554 push ~/Desktop/hosts /system/etc/hosts