一:將網絡連接代理設置寫入配置數據庫
1、通過命令行或者通過雙擊emulatoer可執行文件,打開模擬器
2、在命令行執行adb shell 打開android的控制檯 (確保環境變量設置正確,即已經把Android_SDK/tools 添加到了PATH(Linux)/path(Windows))
3、執行 ls -l /data/data/com.android.providers.settings/databases/settings.db ,查看系統設置數據庫文件是否存在
4、如果數據庫文件存在,執行 sqlite3 /data/data/com.android.providers.settings/databases/settings.db,以settings.db爲當前scheme啓動SQLITE3
5、執行 INSERT INTO system VALUES(99,’http_proxy’, ‘192.168.0.245:8080′); 語句插入數據,其中192.168.0.245是我用的代理服務器IP,8080是端口,請根據具體情況替換
6、執行 SELECT * FROM system; 來查看剛纔插入的數據
7、重啓模擬器,以使代理服務器設置生效
8、可以使用 DELETE FROM system WHERE _id=99; 語句來刪除代理設置,或者使用 UPDATE system SET value = ‘192.168.0.245:8070′ WHERE _id=99; 來修改代理服務器設置
二:可能是DNS的問題
1、用系統的命令進入Android開發包的tools目錄
cd E:android-sdk-windows tools
2、使用adb的shell,確認系統的各項屬性
adb shell
getprop
getprop會列出系統當前的各項屬性
3、得到模擬器的DNS地址
在結果裏可以看到:
[net.dns1]: [10.0.2.3]
[net.dns2]: [10.0.2.4]
4、把dns改成我們自己的DNS
setprop net.dns1 192.168.1.1
注:一般TP-LINK及D-LINK的DNS都是192.168.1.1,如果不是請使用ipcnofig /all命令確認。
三:直接帶參數啓動模擬器
emulator @default -http-proxy 10.16.xx.xx:8080
其中default是模擬器的名稱
四:在模擬器中設置
啓動模擬器,然後進入 Settings->Wireless & networks->Mobile networks->Access Point Names
然後打開出現在列表中的access point;
然後下面這樣設置:
- Proxy : your proxy address
- Port : your proxy port
- Username : your username if needed, or
- Password : your password if needed, or
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
說明:
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\tool
第二布:使用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命令確認。