2015-07-20 92 views
1

當我使用這個例子從一個鏈接一些數據到Android設備:使用仿真器時 https://msdn.microsoft.com/en-us/library/456dfw4f(v=vs.110).aspxXamarin的Android應用程式適用於模擬器,崩潰在實際設備使用的WebRequest

的應用程序工作正常(的Nexus 5與Android Kit Kat),但是當我在實際的Android(三星S3迷你Jellybean)上部署它(發佈版本)時,該應用程序啓動,但之後崩潰,「很不幸..已停止工作」。如果我不使用WebRequest.Create,則應用程序中的所有其他組件都可以在任何地方使用。

WebRequest request = WebRequest.Create(
      "MY LINK HERE"); //with a real link ofcourse 

     request.Credentials = CredentialCache.DefaultCredentials; 
     WebResponse response = request.GetResponse(); 


     Stream dataStream = response.GetResponseStream(); 

     StreamReader reader = new StreamReader(dataStream); 

     string responseFromServer = reader.ReadToEnd() 

     reader.Close(); 
     response.Close(); 
+0

能否請你張貼的http請求的代碼? – IdoT

+0

我已添加代碼:) –

+0

添加try catch子句並請提供例外,並確保您的地址不是本地主機 – IdoT

回答

0

在AndroidManifest.xml文件中啓用Internet的權限爲App屬性下如下:

<uses-permission android:name="android.permission.INTERNET" />

,或者通過嚮導根據以下步驟啓用:

  • 右擊對項目和屬性
  • 在Android Manifest
  • 啓用互聯網複選框下所需的權限 enter image description here

希望這有助於

0

我修正了這個問題。我不知道我必須設置使用互聯網的權限。

Project-> Project Options-> Build-> Android Application-> Required permission->勾選互聯網複選框,然後按OK。

+0

在調試中,Android會隱式地將Internet權限授予您的應用。在發行版中,您必須明確授予Internet權限。 – Jason

相關問題