gpt4 book ai didi

java - 如何在 React Native (android) 中启用 Tls 1.1 和 1.2

转载 作者:行者123 更新时间:2023-11-29 02:22:56 26 4
gpt4 key购买 nike

好吧,我正在为 Android 和 IOS 平台开发应用程序,在我的应用程序中,我正在从 API 获取数据。我意识到我的应用程序无法在某些 Android 版本中获取数据。我在 android 4.1、4.4 和 5.1 中进行了测试。这些版本不影响数据。但是Android 7,fetch和我没有问题。

我正在寻找解决方案,我发现使用 minSdkVersion 16 的 android 版本默认情况下没有启用 TLS 1.1 和 1.2。 (这是从 20 sdkVersion 实现的)为了启用它们,我将不得不使用 Java。我 3 个月前才开始使用 react-native,我不是 java 程序员。所以我在周围看到的东西,并没有告诉我我必须做什么。谁能告诉我在 react-native android 应用程序中启用 TLS 1.1 和 TLS 2.2 的步骤。我只是看到给出要添加的代码的例子,他们没有解释或告诉步骤。我还看到一条评论说,通过启用 TLS 1.1 和 1.2,应用程序无法上传到 Play 商店。

最佳答案

在android build.gradle中添加这个库

implementation 'com.google.android.gms:play-services-safetynet:+'

并将此代码添加到您的 MainApplication.java

import android.content.Intent;
import com.google.android.gms.common.GoogleApiAvailability;
import com.google.android.gms.security.ProviderInstaller;
import com.google.android.gms.security.ProviderInstaller.ProviderInstallListener;

@Override
public void onCreate() {
super.onCreate();
upgradeSecurityProvider();
SoLoader.init(this, /* native exopackage */ false);
}

private void upgradeSecurityProvider() {
ProviderInstaller.installIfNeededAsync(this, new ProviderInstallListener() {
@Override
public void onProviderInstalled() {

}

@Override
public void onProviderInstallFailed(int errorCode, Intent recoveryIntent) {
// GooglePlayServicesUtil.showErrorNotification(errorCode, MainApplication.this);
GoogleApiAvailability.getInstance().showErrorNotification(MainApplication.this, errorCode);
}
});
}

关于java - 如何在 React Native (android) 中启用 Tls 1.1 和 1.2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54110962/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com