Android Studio的 虚拟机域名绑定(hosts)问题

我们经常需要修改本地Hosts来绑定域名来做测试。我们在测试模拟器的时候,模拟器会不会读取宿主机的hosts文件呢?经过测试证明,Xcode的模拟器是会读取本机hosts文件的,但Android Stuidio的模拟器却不会读取宿主机的hosts文件,因此如果需要使用adb工具修改Android模拟器内的hosts文件来实现特定域名绑定。

 

修改Android模拟器Hosts文件的步骤:

说明:这里采用的是相应的通过将手机中的Hosts文件采用push的方法进行操作的 

1. 用cmd进入相应的SDK的tools目录下  

2. 使用emulator –avd youavdname –partition-size 128 的命令 启动模拟器 

3. 返回上一级 目录 cd .. 到相应的platform-tools 目录下 

4. 获取root权限

./adb root
adbd is already running as root

 

 

5. 设置/system文件夹为可写

./adb remount
remount succeeded

 

 

6. 从模拟器中获取hosts文件

sudo ./adb pull /system/etc/hosts
[100%] /system/etc/hosts

 

 

7. 在当前目录修改刚才pull出来的hosts文件  

9. 在命令行中使用

./adb push hosts /system/etc/hosts
[100%] /system/etc/hosts

 

 

10. 这时候你可以进入命令行中看看是否修改成功 

11. adb shell  进入模拟器命令行

12. cat /system/etc/hosts 检查修改是否生效

 

 

 这样就修改好了。很烦的是,每次模拟器重启,这个修改就失效了。需要重新修改。

你可能感兴趣的:(Android Studio的 虚拟机域名绑定(hosts)问题)