我的项目以 SDK27 为目标,运行良好且经过大量测试。由于 google play 想要以 SDK28 为目标,我将目标更改为 SDK28。
在此之后,我开始在(仅)android 9 中连接到服务器时遇到问题。结果证明这是 clearTextTraffic 禁用问题,因为服务器没有 https(我的是一个小应用程序)。添加android:usesCleartextTraffic="true"
AndroidManifest.xml 后,此问题已解决,应用程序再次像以前一样连接到服务器。
我也有一个使用 MultipartUploadRequest 的图像上传页面,这在 SDK28 之后也失败了,这在 android 9 中仍然没有修复(它之前肯定可以工作,即使现在在其他 android 版本中也可以正常工作)。所以,我几乎可以肯定这是 clearTextTraffic 和文件上传相关的问题(或至少与 targetSDK 更改有关)。但不确定是什么或如何解决这个问题。我正在使用 okhttp。任何帮助是极大的赞赏。