実機のhostsを書き換えるには専用のアプリがあるようだが、今回はエミュレータ(仮想デバイス AVD)のhostsの書き換え方法。

Windowsのコマンドプロンプトから。

> adb shellで仮想デバイスのshellを起動できる。

まずは既存のhostsをコピー。

> adb pull /system/etc/hosts hosts

書き換えて上書き。

> adb push hosts /system/etc/hosts

failed to copy 'hosts' to '/system/etc/hosts': Read-only file system と出る場合は

> adb remount

out of memory と出る場合は仮想デバイスのメモリがいっぱいだそうだ。
仮想デバイスマネージャから内部ストレージの容量を上げてもだめなようだ。

> emulator -avd 仮想デバイス名 -partition-size 1024
とかやってみると書き換え出来た。
1024はandroid4.2の場合。

最適値や仮想デバイスマネージャからの書き換えは調査中。

しかもhostsの設定は仮想デバイスを再起動すると消えるらしい・・・





関連 2013-09-28 19:52:30