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>