Xamarin C#错误:SecureChannelFailure(身份验证或解密失败。)

时间:2017-03-09 21:45:44

标签: xamarin webclient

我用这个:

        WebClient mClient = new WebClient();
        mClient.UseDefaultCredentials = false;
        mClient.Credentials = new NetworkCredential("Name", "Password");
        Uri mUrl = new System.Uri("https://server");
        mClient.DownloadDataAsync(mUrl);
        mClient.DownloadDataCompleted += MClient_DownloadDataCompleted;`

我在标题中收到错误。

我不明白的是,如果我在Visual Studio的控制台应用程序中使用相同的代码,我会得到预期的结果!但如果我在我的Android应用程序中使用此代码,我会在标题中得到错误。我在模拟器和设备上试过它。

2 个答案:

答案 0 :(得分:23)

使用ModernHttpClient对我不起作用。什么工作改变了Android项目中的一些设置。首先右键单击项目,然后选择“属性”。

Android选项>高级> HttpClient实现= Android

Android选项>高级> SSL / TLS实现= Native TLS 1.2 +

我在Visual Studio 2017上。

答案 1 :(得分:0)

使用ModernHttpClient Nuget Package并创建HttpClient实例,如: HttpClient client = new HttpClient(new NativeMessageHandler());

否则转到android build选项并更改settings = 右键单击android project => properties =>选择Android选项卡=>点击Advanced =>并更改HttpClient Implementation =>默认为Android 并更改SSL / TLS实现=>默认为Native TLS 1.2+

这两个选项对我有用。