2015-04-28 6 views
5

Sto utilizzando System.Net.Http.HttpClient direttamente nel PCL Xamarin.Forms. Mentre funziona perfettamente su Windows Phone, su Android genera un'eccezione non gestita sulla linea GetAsync.Xamarin Forms PCL HttpClient che lancia un'eccezione non gestita su Android

C'è qualcosa di specifico della piattaforma che mi manca?

var client = new HttpClient(); 
var response = await client.GetAsync(Constants.ProjectsUri); // this breaks 
+4

Qual è l'eccezione reale? – Jason

+1

Attenzione !!! Android 5 ha un sacco di bug, se lo stai testando con un dispositivo lecca-lecca, prova ad eseguirlo come rilascio invece di eseguire il debug. – Gusman

+0

invece di usare attendere prova. Risolvi questo ha cambiato il comportamento del mio codice a volte –

risposta

1

Utilizzare il Native Client Android Handler

Nelle impostazioni di generazione di Android, impostare HttpClient Implementation utilizzare AndroidClientHandler.

Link to Xamarin Documentation

La classe AndroidClientHandler è stato introdotto nel Xamarin.Android 6.1 per fornire TLS 1.2 il supporto alle applicazioni Xamarin.Android. Questa classe utilizza il java.net.URLConnection nativo per tutte le connessioni HTTP, consentendo a un'istanza HttpClient di utilizzare qualsiasi protocollo di rete e crittografia disponibile per Android.

enter image description here