2011-05-17 20 views
2

我的android模擬器無法訪問互聯網。它連接到「網絡」。它可以看到本地網絡中的機器/服務器,但除此之外沒有什麼。我可以看到右上角的3g圖標。如何才能使Internet連接在我的Android模擬器中工作?

從我的代碼我試圖從互聯網上的服務器上下載的東西,我得到UnknownHostException。我在清單中設置了android.permission.INTERNET,但顯然這不是問題,因爲即使操作系統的瀏覽器都不能打開網站。我想我不能指望我的代碼能夠訪問互聯網,如果連瀏覽器都沒有的話。

畢竟我用google搜索大多數人都在討論關於配置代理的問題,但我沒有通過計算機上的代理連接到互聯網。這是否需要設置?任何其他需要檢查的設置?

+1

你可以粘貼stacktrace嗎? – PedroAGSantos 2011-05-17 14:28:20

回答

4
  • 您的計算機中是否有多個網絡卡 ? (即一個 以太網和無線)?如果是這樣,請將 放入您的網絡設置,並且 禁用您未使用的那個。 即使它目前沒有連接 任何東西。

  • 您是否使用類似Norton Internet Security的產品?如果您禁用它,模擬器互聯網是否工作?

  • 您還可能有一個DNS的問題:你 可以在Eclipse中嘗試 - >運行
    配置 - >目標,並添加
    「-dns服務器XXXX」 其中XXXX
    是爲你的DNS的IP地址
    服務器。

  • 如果win7的,先從管理
    privledges模擬器

  • 在Mac上,如果你是在Mac - 嘗試
    本 -

    1.GoTo蘋果圖標 - >系統偏好設置 - >網絡 2.單擊齒輪圖標並選擇「設置服務訂單」 3.將活動接口置於其他接口之前。 4.重新啓動Android模擬器。

    和其他有用的東西,從嘗試:How to connect android emulator to the internet

-1

我最近寫了下載鈴聲從互聯網,並在SD卡保存它的應用程序。我在這裏粘貼代碼,所以也許你可以比較

  url = new URL("http://wap.iwfr.net/mp3/mp3toringtone/mp3file-"+id+".mp3"); 
     HttpURLConnection conn = (HttpURLConnection) url.openConnection(); 
     int responseCode =conn.getResponseCode(); 
     if (responseCode == HttpURLConnection.HTTP_OK) { 
      InputStream in = conn.getInputStream(); 
      int size = in.available(); 
      byte[] buffer = new byte[size]; 
      in.read(buffer); 

      in.close(); 



      String path="/sdcard/sounds/"; 
      String filename="fahad.mp3"; 
      boolean exists = (new File(path)).exists(); 
      if (!exists){new File(path).mkdirs();} 
      FileOutputStream save; 
      save = new FileOutputStream(path+filename); 
      save.write(buffer); 

      save.flush(); 
      save.close(); } 
相關問題