Android Pie 9.0 上未显示数据

Data not showing on Android Pie 9.0

在我将 phone 从 Android Oreo 8.0 更新到 Android Pie 9.0 后,我无法再使用 HttpUrlConnection 从 MySQL 数据库获取数据。

我尝试使用模拟器 Android Oreo 8.0 并显示数据。但是,当我尝试使用模拟器 Android Pie 9.0 时,数据未显示。请帮助我。

我最近遇到了 Android 9 的相同问题,但我不得不为不同的屏幕使用一些 URL。所以我将 android:usesCleartextTraffic="true" 添加到 Manifest 并且它起作用了,但我们不想为此损害整个应用程序的安全性。因此,解决方法是将链接从 HTTP 更改为 https.But,如果您必须仅使用 http 与您的应用程序通信,那么这就是您的解决方案。

android:networkSecurityConfig="@xml/security_config"

将此添加到 Xml

<network-security-config>
<base-config cleartextTrafficPermitted="true"/>
<debug-overrides>
<trust-anchors>
<certificates src="system" />
<certificates src="user" />
</trust-anchors>
</debug-overrides>
</network-security-config>

如果您的应用面向 Android 9 或更高版本,isCleartextTrafficPermitted() 方法 returns 默认为 false。

如果您的应用需要为特定域启用明文,您必须在应用的网络安全配置中为这些域明确设置 cleartextTrafficPermitted 为 true。

Framework Security changes in Android 9 that improve your app's security