2008-08-26 52 views
49

有沒有人設法讓Android模擬器工作在需要驗證的代理之後?需要使用Android模擬器進行身份驗證的代理

我已經試過-http代理參數設置爲

http://DOMAIN/USERNAME:[email protected]:PORT 

但我有沒有成功。

我試過按照文檔無濟於事。我也嘗試了-verbose-proxy設置,但這似乎不再存在。

任何指針?

+1

你看這個嗎? http://developer.android.com/guide/developing/tools/emulator.html#proxy Jay – 2010-02-24 13:29:26

+0

@ AndroidRef.com它不工作... – 2012-07-12 14:18:26

回答

41

我管理它在Adndroid 2.2模擬器中。

Go to "Settings" -> "Wireless & Networks" -> "Mobile Networks" -> "Access Point Names" -> "Telkila" 

那邊屬性「代理」 和財產「端口」代理端口設置代理服務器的主機名

+0

如果輸入您的用戶名,請記住包含域名[domain \ username],否則您將獲得代理授權彈出窗口。 – scottyab 2010-12-24 11:45:48

+23

這些代理設置適用於Android中的瀏覽器 - 但不適用於應用程序。有沒有人遇到類似的問題? – 2011-09-07 15:51:31

2

我沒有使用過Android模擬器,但是我已經在Windows上爲perl和wget設置了$ http_proxy環境變量以及一些cygwin工具。這可能適用於你的android,但在域名中的斜線似乎是一個潛在的問題。 我知道我嘗試讓我的域名「全球」在那裏,但最終拿出來並堅持:http://$USER:[email protected]:80

我碰到很多,雖然是一個問題是不能告訴使用代理的DNS查詢太。如果他們不這樣做,我總是會得到一個未找到的主機名。我想找到一個本地DNS解析器,可以使用代理的所有程序不會。

14

我記得有同樣的問題 - 在網絡上搜索後,我發現這個解決方案 - 在命令行中,

1. > adb shell 
2. # sqlite3 /data/data/com.android.providers.settings/databases/settings.db 
3. sqlite> INSERT INTO system VALUES(99,’http_proxy', 'proxy:port'); 
4. sqlite>.exit 

編輯: 編輯答案,以反映最新版本的Android。

+2

在sdk 2.1中,它應該是: sqlite3/data/data/com.android.providers.settings/databases/settings.db – Lily 2010-08-18 19:52:40

+0

我在做2.3,它顯示錯誤:錯誤:無法打開數據庫「/data/data/com.google.android.providers.settings/databases/ settings.db「:無法打開數據庫文件 – 2011-05-04 05:28:45

+1

錯誤已解決:在2.3中,它應該是sqlite3 /data/data/com.android.providers.settings/databases/settings.db,如上面所述。 – 2011-05-04 05:30:26

25

看起來像SDK 1.5以上,-http-proxy標誌也不起作用。我的工作是在模擬器中啓動Android圖像,然後一旦Android正在運行,請轉至Home > Menu > Settings > Wireless Controls > Mobile Networks > Access Point Names,然後設置默認接入點的http代理設置。

隨着APN代理設置的到位,我可以讓模擬器的瀏覽器瀏覽網頁。但是,其他的東西,如地圖仍然無法正常工作。

3

周杰倫,雖然這將是這個信息的理想場所,它還沒有更新爲2.1。下面我將列出當前不適用於2.1仿真器的方法。

http-post參數不適用於2.1仿真器。 在2.1模擬器中的APN列表中設置代理不起作用。 通過sql-lite將代理直接插入系統表不適用於2.1。

事實上,通過我在2.1中找到的模擬器讓瀏覽器連接到互聯網的唯一方法是根本不使用代理。我真的希望很快就能解決這個問題,因爲很多人都有這個問題。

2

我能夠查看流量使用HTTP嗅探器,而不是代理。我用HTTPScoop,這是一個不錯的小應用程序。

另外,使用HTTPScoop的好處在於,當我打開互聯網共享並讓我的手機使用我的Mac上的無線網絡時,我還可以看到實際設備上的流量。所以這對於調試手機本身和模擬器上發生的事情是一件很好的事情。

這樣,它不會不管你用什麼模擬器,因爲嗅探器看到交通獨立的仿真器,設備,編譯器設置等

5
  1. 找到文件androidtool.cfgC:\Documents and Settings\YOUR USER NAME\.android\

  2. 加入這一行:

    [email protected] 
    
  3. 保存文件並嘗試打開了Android SDK。

2

我會解釋所有的步驟:

  1. 轉到Android模擬器設置>無線&網絡>移動網絡>接入點> Telkilla>在這裏做必要的設置,如代理,港口,等

我認爲現在一切都清楚了關於代理服務器設置...

3
  1. 啓動命令提示符。

  2. 轉到您的模擬器所在的文件夾。通常,它將位於Android SDK的工具文件夾中。

  3. 然後使用下面的命令:

    emulator -avd <avd name> -http-proxy <server>:<proxy> 
    

    利用這一點,我們就可以使用瀏覽器訪問互聯網。

2

對於Android2.3.3 設置 - >無線&網絡 - > MobileNetworks-> AccessPointNames-> Telkila-> 設定代理和這裏的端口(XX.XX.XX.XX和端口)

3

在Eclipse 3.45中使用帶有代理的Android SDK 1.5仿真器

轉到Package Explorer - >右鍵單擊您的Android項目 - > Run As-> Run Configurations。

在Android應用程序的左欄下,選擇你的項目 - >在右欄,你看到Android |目標|常用選項卡 - >

選擇目標 - >在底部的「其他仿真器命令行選項」 - >

-http代理http://www.gateProxy.com:1080 -debug代理http://www.gateProxy.com:1080

- >運行/關閉。

5

對於設置代理服務器,我們需要設置APNS設置。要做到這一點:

  • 進入設置
  • 進入無線和網絡
  • 轉到移動網絡
  • 進入接入點名稱。使用菜單添加新APNS
  • 設置代理服務器=本地主機
  • 設置端口=您正在使用,使代理服務器端口,在我的情況下,它是8989

有關設置名稱和APN這裏是鏈接:

根據您的SIM卡,你可以看到表

1

我不得不當我使用下面的命令同樣的問題:

emulator-x86.exe -http-proxy domain\user:[email protected]:port -avd MyAVD 

我得到了代理身份驗證錯誤。

最後,我不得不在這裏使用Cntlm繞過代理NTLM身份驗證:

http://sourceforge.net/projects/cntlm/

再經過簡單的配置cntlm.ini,我用下面的命令:

emulator-x86.exe -http-proxy 127.0.0.1:3128 -avd MyAVD 

它的作品:)