android studio开发because:net::ERR_CLEARTEXT_NOT_PERMITTED
时间: 2023-11-29 18:02:18 浏览: 168
解决vue net :ERR_CONNECTION_REFUSED报错问题
这个问题是因为您的应用程序试图连接到一个不安全的 HTTP 或明文连接,而不是使用加密的 HTTPS 连接。为了解决这个问题,您需要在您的应用程序中进行以下更改:
1. 在您的 AndroidManifest.xml 文件中添加以下代码,以允许应用程序使用不安全的连接:
```
<application
...
android:usesCleartextTraffic="true"
...>
```
2. 将所有的 HTTP 请求都改为 HTTPS 请求,以确保您的应用程序使用加密的连接。
3. 如果您使用的是 Android 9 或以上版本,则需要在您的网络请求中添加以下代码,以允许使用不安全的连接:
```
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
// 在 Android 9 或以上版本中使用以下代码
builder = new OkHttpClient.Builder()
.followRedirects(false)
.followSslRedirects(false)
.retryOnConnectionFailure(false)
.cache(null)
.connectTimeout(30, TimeUnit.SECONDS)
.readTimeout(30, TimeUnit.SECONDS)
.writeTimeout(30, TimeUnit.SECONDS)
.protocols(Arrays.asList(Protocol.HTTP_1_1));
} else {
// 在 Android 9 以下版本中使用以下代码
builder = new OkHttpClient.Builder()
.followRedirects(false)
.followSslRedirects(false)
.retryOnConnectionFailure(false)
.cache(null)
.connectTimeout(30, TimeUnit.SECONDS)
.readTimeout(30, TimeUnit.SECONDS)
.writeTimeout(30, TimeUnit.SECONDS);
}
```
这些更改应该解决您的问题。
阅读全文