温馨提示:这篇文章已超过438天没有更新,请注意相关的内容是否还可用!
摘要:,,Android 9.0及以上版本对HTTP访问实施了限制,为解决这一问题,可采取以下解决方案:一是将HTTP通信升级为HTTPS,以确保数据安全并符合系统要求;二是使用网络库进行HTTP请求,通过配置拦截器处理HTTP和HTTPS请求;三是使用自定义的网络客户端,支持HTTP和HTTPS协议,并适配不同版本的Android系统。这些方案可有效解决Android 9.0及以上版本HTTP访问受限的问题。
一、强制使用HTTPS进行网络通信,确保数据传输的安全性和隐私性。
二、对于必须支持HTTP的应用或服务,可以通过配置特定的网络库或框架以支持HTTP访问。
三、更新应用以支持最新的安全协议和API标准。
背景:
随着Android 9.0的发布,系统默认禁止使用HTTP进行访问,当尝试使用HTTP链接时,将会收到错误信息,为了解决这一问题,我们可以采取以下两种主要方法。
XML布局设置方法:
1、在Android 9.0及以上版本,为允许HTTP访问,需进行特定配置。
2、在android/app/res目录下新建network_security_config.xml文件,包含安全配置信息。
3、在android/app目录下的AndroidManifest.xml文件中的application标签内声明网络安全配置文件:android:usesCleartextTraffic="true"。
4、需要注意的是,networkSecurityConfig文件中的cleartextTrafficPermitted属性会优先于application标签内的usesCleartextTraffic属性,若两者存在冲突,cleartextTrafficPermitted的设置将生效。
代码设置方法:
1、除通过XML布局设置外,还可以通过代码绕过HTTP访问限制。
2、在AndroidManifest.xml文件中的application标签内声明:android:usesCleartextTraffic="false"。
3、编写一个反射工具类,用于动态调用对象的指定方法。
4、通过反射调用NetworkSecurityPolicy的setCleartextTrafficPermitted方法,可以动态设置是否允许明文流量,此方法适用于需要动态调整HTTP访问策略的场景。
通过XML布局设置和代码设置,可以有效绕过Android 9.0的HTTP访问限制,XML布局设置主要通过在AndroidManifest.xml中进行配置实现,而代码设置则通过编写反射工具类来动态调整HTTP访问策略,这两种方法均可解决Android 9.0对HTTP访问的限制问题,以确保应用程序的正常运行和用户体验。
还没有评论,来说两句吧...