API 调用 Android 9 个配置设备和模拟器显示连接错误
API call in Android 9 configuration devices and emulator shows connection error
我正在使用 Android 9 模拟器,它具有来自系统的互联网连接,并且我在清单中添加了互联网许可。当我尝试调用 api 时,它显示错误消息为:connection error.
只需在 manifest 的应用程序 标签中添加以下内容
android:networkSecurityConfig="@xml/network_security_config"
在我们添加 activities
的 <application>
中添加以下代码
<uses-library android:name="org.apache.http.legacy" android:required="false"/>
在res文件夹中添加XML文件夹。并在 XML 文件夹中创建一个 network_security_config.xml
文件。
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">your domain which is your base url for webservice.com</domain>
</domain-config>
</network-security-config>
正如 Piyush 在我的问题中评论的那样,答案是添加
android:usesCleartextTraffic="true"
在 清单 文件中,在 application
标签
中
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.mypackage">
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@drawable/appicon"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:usesCleartextTraffic="true">
//your android components...
</application>
我正在使用 Android 9 模拟器,它具有来自系统的互联网连接,并且我在清单中添加了互联网许可。当我尝试调用 api 时,它显示错误消息为:connection error.
只需在 manifest 的应用程序 标签中添加以下内容
android:networkSecurityConfig="@xml/network_security_config"
在我们添加 activities
<application>
中添加以下代码
<uses-library android:name="org.apache.http.legacy" android:required="false"/>
在res文件夹中添加XML文件夹。并在 XML 文件夹中创建一个 network_security_config.xml
文件。
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">your domain which is your base url for webservice.com</domain>
</domain-config>
</network-security-config>
正如 Piyush 在我的问题中评论的那样,答案是添加
android:usesCleartextTraffic="true"
在 清单 文件中,在 application
标签
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.mypackage">
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@drawable/appicon"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:usesCleartextTraffic="true">
//your android components...
</application>