我正在使用Xamarin Android。我正在实现条纹以进行支付,但是当我按下Stripe API时,捕获了以下异常


  Stripe不再支持使用TLS 1.0发出的API请求。请使用TLS 1.2或更高版本启动HTTPS连接。


如何消除错误?

附言相同的代码在Xamarin IOS中绝对可以正常工作。

这是我的代码:

    async Task<StripeCustomer> GetCustomer(string cId)
        {
        AppLog.WriteLogD(TAG, "Getting Customer...");
        var customerService = new StripeCustomerService();
        StripeCustomer stripeCustomer = null;
        try
        {
            Task<StripeCustomer> getCustomerTask = customerService.GetAsync(cId);
            stripeCustomer = await getCustomerTask;
            //Console.WriteLine(stripeCustomer.StripeResponse.ResponseJson);
            AppLog.WriteLogD(TAG, "Customer: " + stripeCustomer.Description, "(" + stripeCustomer.Email + ")");
        }
        catch (StripeException e)
        {
        AppLog.WriteLogD(TAG, "Error Type:" + e.StripeError.ErrorType);
            AppLog.WriteLogD(TAG, "Message:: " + e.StripeError.Message);
        }
        return stripeCustomer;
    }

最佳答案

根据Android文档,TLS 1.2 is supported by API Level 16 or higher

要激活它,您应该:


将最低Android版本设置为API级别16
在项目设置-> Android参数-> SSL / TLS实现中将SSL / TLS实现设置为1.2

10-08 19:17