我的應用程序中嵌入可通過迴環設備的URL來訪問本地HTTP服務器:http://127.0.0.1:8080/的Android 127.0.0.1(迴環)連接:工作在WiFi,但沒有對3G/4G
它工作正常,具備WiFi ,它也可以在沒有外部網絡的情況下正常工作(沒有WiFi,沒有3G),但是當WiFi被禁用並且3G使能時它失敗。
連接亞行外殼和執行「netcfg中」我可以看到迴環設備始終處於啓用狀態:
[email protected]:/ $ netcfg
...
lo UP 127.0.0.1/8 0x00000049 00:00:00:00:00:00
...
阿洛斯的「ping 127.0.0.1」繼續工作,同時開啓/關閉WiFi或3G 。
有什麼想法?
更新: 添加到拼圖。從我的dev的電腦我轉發TCP端口:
$ adb forward tcp:8080 tcp:8080
然後我嘗試使用我的http://127.0.0.1:8080/電腦連接。它的工作原理,但是當它使用Android設備上運行的瀏覽器時仍然失敗。
更新2015年6月1日: 在3G工作時我在亞行logcat很多相似的相關錯誤的看到:
W/ContextImpl( 504): Calling a method in the system process without a qualified user: android.app.ContextImpl.sendStickyBroadcast:1239 com.android.server.TelephonyRegistry$3.onReceive:818 android.app.LoadedApk$ReceiverDispatcher$Args.run:788 android.os.Handler.handleCallback:725 android.os.Handler.dispatchMessage:92
和
E/CellLocation(8336): create GsmCellLocation
它沒有任何意義給我觸發Gsm活動連接到迴環設備。
UPDATE 2015年6月1日(2): 我設法在 安裝wget的/data/data/com.XXXX.yyy/files/appFiles/bin
然後,我通過 「ADB殼」 連接 - >「運行爲com.XXXX.yyy」,最後執行: 的wget -O - 「http://127.0.0.1:8080/」
我正常工作,所以我可以放棄任何怪異的安全設置,禁用在本地主機上的環回訪問,所以我想它與WebView/WebViewClient嘗試錯誤地使用3G外部代理訪問回送有關。現在我想知道是否可以在WebView上禁用代理。
我不明白你在做什麼。您是否嘗試使用Android設備上的瀏覽器打開託管在您電腦上的網站?另外,它是一個真正的設備或模擬器? – Squonk
@Squonk:其實我嘗試使用可以在本地訪問(通過Web瀏覽器或WebView)或外部Web瀏覽器的Web服務器。我正在研究真正的(真正的)設備。 – earizon