注册

Android 系统修改 hosts 文件的详细步骤与方法

因为个别缘由,可能须要更改hosts文件指定域名到对应的IP地址。Android是基于Linux的系统,与Linux类似,通过hosts文件来设置。

在Android下,/etc是link到/system/etc的linux培训,我们须要更改/system/etc/hosts来实现。并且这个文件是只读,不能通过shell直接更改。可以通过联接到PC上使用adb来更改。步骤如下:

1、获得root权限:adbroot

2、设置/system为可读写:adbremount

3、将hosts文件复制到PC:adbpull/system/etc/hosts

4、修改PC机上文件

5、将PC机上文件复制到手机:adbpush/system/etc/hosts

假如要查看是否更改成功,可以在PC上执行adbshell,运行cat/system/etc/hosts;或则在手机上运行cat/system/etc/hosts。

在Android1.6系统中,hosts文件格式有一点与PC机Linux不同:不能在一行中一个IP对应多个域名linux hosts文件修改,例如:


127.0.0.1

在大多PC机Linux系统是合法的,但不能在Android1.6上起作用,须要拆成每位域名一行就能使用:

127.0.0.1

127.0.0.1

127.0.0.1

-------------------------------------------------------------------------------------------

android下更改hosts文件及outofmemory的解决


须要使用android模拟器访问某个网站,虽然是指向开发机器上的linux hosts文件修改,这时须要更改andorid上的hosts文件,

下边这个网站介绍了技巧

具体步骤如下

1、获得root权限:adbroot

2、设置/system为可读写:adbremount

3、将hosts文件复制到PC:adbpull/system/etc/hosts

4、修改PC机上文件


5、将PC机上文件复制到手机:adbpush

/system/etc/hosts

但在第五步时linux 虚拟主机,有的人会报outofmemory的错误

这是由于直接用命令行启动,而没加一个参数引起的,所以用下边这个命令来启动就行了

$emulator–avdyouravdname–partition-size128

来始于(可能被墙了)

修改Android模拟器中的hosts文件

下载android模拟器后解压得到android-sdk-linux_x86文件夹

步入到android-sdk-linux_x86/tools/

执行./android创建一个test的虚拟手机

启动虚拟手机并修改分区大小为128M

./emulator-avdtest-partition-size128

新打开一个终端在当前目录执行

./adbpull/system/etc/hosts/home/jecelyin/

取出hosts文件到PC上

之后执行

./adbroot

./adbremount

获得root权限并将虚拟手机上的/system重新挂载为可写

在笔记本上更改/home/jecelyin/hosts文件,假如须要虚拟手机访问笔记本上的web网站,hosts的ip地址应当为10.0.2.2

执行下边命令传回

./adbpush/home/jecelyin/hosts/system/etc/hosts

重启模拟器

以上就是Android 系统修改 hosts 文件的详细步骤与方法的详细内容,更多请关注CTO智库其它相关文章!