進入adb shell後android
ping 127.0.0.1 (android地址)能夠ping 通sql
ping 10.0.2.2 (本地電腦地址)也能夠ping通shell
可是數據庫
ping www.baidu.com 等外網就是ping不通windows
求解!瀏覽器
windows下,配置好adroid環境變量後(如將d:android-sdk-windows-1.0_r1 ools加入系統變量path),在命令行窗口輸入:網絡
emulatoride
啓動android 模擬器後, 輸入:學習
adb shellspa
進入adb shell模式:
將網絡鏈接代理設置寫入配置數據庫,假如你的上網代理ip是10.193.xx.xx:
sqlite3 /data/data/com.android.providers.settings/databases/settings.db "insert into system values(99,'http_proxy','10.193.xx.xx:1080')"
查詢一下是否成功更改了系統設置:
sqlite3 /data/data/com.android.providers.settings/databases/settings.db "select * from system"
結果中應有:99|http_proxy|10.193.xx.xx:1080
重啓模擬器,應該能夠使用browser上 internet了.
刪除剛剛寫入的配置信息方法:
sqlite3 /data/data/com.android.providers.settings/databases/settings.db "delete from system where _id=99"
android模擬器默認的地址是10.0.2.3,默認的dns也是 10.0.2.3,對於在家裏上網學習android的人(像我)來說,通常電腦的ip都是192.168.1.100之類的,不在同一個網段。因此就會出現電腦能夠上網可是模擬器不能上網的狀況。其實設置方法很簡單,只要把模擬器的默認dns設置成電腦的dns地址便可。
第一步:用系統的命令進入android開發包的tools目錄
cd x:...android-sdk-windows ool
第二布:使用adb的shell,確認系統的各項屬性
adb shell
getprop
getprop會列出系統當前的各項屬性
第三步:獲得模擬器的dns地址
在結果裏能夠看到:
[net.dns1]: [10.0.2.3]
[net.dns2]: [10.0.2.4]
[net.dns3]: [10.0.2.5]
[net.dns4]: [10.0.2.6]
第四步:把dns改爲咱們本身的dns
setprop net.dns1 192.168.1.1
注:通常tp-link及d-link的dns都是192.168.1.1,若是不是請使用ipcnofig /all命令確認。
大功告成,再去使用模擬器的瀏覽器的話,你就能夠發現你已經能夠上網了。