Visual Studio Xamarin Android System.Net.WebException: ошибка: ConnectFailure (сеть недоступна)

мое приложение для Android, созданное в Xamarin, имеет проблемы с подключением к Интернету, ниже приведен код ошибки.

Time Device Name Type PID Tag Message 10-09 05:04:52.256 Genymotion Samsung Galaxy S7 - 6.0.0 - API 23 - 1440x2560 Error 1453 AndroidRuntime android.runtime.JavaProxyThrowable: System.Net.WebException: Error: ConnectFailure (Network is unreachable) ---> System.Net.Sockets.SocketException: Network is unreachable at System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP) [0x000b6] in <6c708cf596db438ebfc6b7e012659eee>:0 at System.Net.WebConnection.Connect (System.Net.HttpWebRequest request) [0x0016d] in <6c708cf596db438ebfc6b7e012659eee>:0 --- End of inner exception stack trace --- at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke (System.String method_name, System.Object[] parameters) [0x000a7] in <3f9824dbe67544e1805773e0a3dbdf6b>:0 at GWAWE.localhost.Service1.Get_Data () [0x00001] in <1baad81b40d64c6886bf076df034661f>:0 at (wrapper remoting-invoke-with-check) GWAWE.localhost.Service1:Get_Data () at gwawe.MainActivity.BuildLayout () [0x00031] in <1baad81b40d64c6886bf076df034661f>:0 at gwawe.MainActivity.OnCreate (Android.OS.Bundle savedInstanceState) [0x0004e] in <1baad81b40d64c6886bf076df034661f>:0 at Android.App.Activity.n_OnCreate_Landroid_os_Bundle_ (System.IntPtr jnienv, System.IntPtr native__this, System.IntPtr native_savedInstanceState) [0x0000f] in <9663139ab15947a89e15a6bcd9621f68>:0 at (wrapper dynamic-method) System.Object:e6ea694d-cf84-4098-a161-481a5ad1d4ae (intptr,intptr,intptr) at md5a9dcb246785c0066d52ff25b77e1a72d.MainActivity.n_onCreate(Native Method) at md5a9dcb246785c0066d52ff25b77e1a72d.MainActivity.onCreate(MainActivity.java:29) at android.app.Activity.performCreate(Activity.java:6237) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) at android.app.ActivityThread.-wrap11(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) Force finishing activity GWAWE.gwawe/md5a9dcb246785c0066d52ff25b77e1a72d.MainActivity

Я использую Visual Studio 2017 с Xamarin и Genymotion. Visual Studio, Xamarin и Genymotion обновлены. Приложение создано только для Android 6.0. В манифесте Android я добавил android.permission.RECEIVE_BOOT_COMPLETED. Я использую «Wi-Fi» на эмуляторе.

Приложение должно автоматически запускаться после загрузки устройства, а ошибка отображается только при перезагрузке эмулятора. Если я запускаю приложение вручную, все работает нормально. Приложение подключается к веб-службе IIS.

Кто-нибудь знает, что здесь происходит?




Ответы (1)


Ну, насколько я понимаю, либо разрешение на доступ к Интернету не предоставлено в вашем приложении для Android, либо у вас нет подключения к Интернету, если у вас нет разрешения, все, что вам нужно сделать, это добавить эту строку в свой манифест.

  <uses-permission android:name="android.permission.INTERNET" />
person FreakyAli    schedule 09.10.2017
comment
Прежде чем создать эту тему, я проверил другие темы и учебные пособия, поэтому у меня есть это предложение в моем файле манифеста Android. Также странно, что иногда эта проблема возникает, а иногда все просто отлично. Я добавляю System.Net.HTML в ссылки, чтобы в нескольких последних тестах не возникало проблем. - person Brath; 09.10.2017