返回

Android 9 Pie下如何解决混合HTTP与HTTPS请求问题?

Android

Android 9 Pie:启用所有连接类型的 HTTP 和 HTTPS 请求

随着 Android 9 Pie 的出现,网络连接规则发生了重大转变。为了增强安全性,未加密的请求将不再被允许。另外,系统默认情况下会要求使用传输层安全性 (TLS)。对于那些仅通过 HTTPS 发送请求的应用程序,安全问题可以得到解决。但是,对于那些通过不同站点(如浏览器应用程序)发送请求的应用程序来说,该如何处理呢?

在这篇文章中,我们将深入探究如何解决这个问题,让您在 Android 9 Pie 中为所有类型的连接(HTTP 和 HTTPS)启用请求。

问题剖析

在 Android 9 Pie 中,如何才能为所有类型的连接(HTTP 和 HTTPS)启用请求?

解决方法

要解决这个问题,我们需要分以下几个步骤进行:

1. 修改网络安全配置

首先,让我们创建一个新的 Android 项目。右键单击项目视图中的应用程序模块,选择“新建”>“网络安全配置资源文件”。在“新资源文件”对话框中,输入文件名称(例如 network_security_config.xml),然后单击“确定”。

在创建的网络安全配置资源文件中,添加以下内容:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
  <domain-config cleartextTrafficPermitted="true">
    <domain includeSubdomains="true">example.com</domain>
  </domain-config>
</network-security-config>

请注意,您需要将 "example.com" 替换为您需要允许所有网络连接类型的域。

2. 在清单文件中配置网络安全配置

下一步,在清单文件中(AndroidManifest.xml),在 <application> 元素中添加以下行:

<application ...>
  <network-security-config
    android:networkSecurityConfig="@xml/network_security_config" />
  ...
</application>

这将指示 Android 系统使用您创建的网络安全配置。

3. 构建并运行应用程序

最后,构建并运行您的应用程序。现在,您应该能够通过 HTTP 和 HTTPS 发送请求了。

额外提示

  • 仅对需要它的域名启用明文流量。
  • 定期检查 Android 开发人员文档以了解网络安全的最新变化。

结论

通过遵循本指南中的步骤,您现在可以在 Android 9 Pie 中为所有类型的连接(HTTP 和 HTTPS)启用请求。这样,您的应用程序可以继续与所有类型的网站通信,而无需担心连接问题。

常见问题解答

1. 什么是明文流量?

明文流量是指未加密的网络流量。

2. 为什么 Android 9 Pie 会禁止明文流量?

为了提高安全性,Android 9 Pie 禁止明文流量,因为它容易受到攻击。

3. 如何为特定域名启用明文流量?

按照本文中概述的步骤,并确保在网络安全配置中指定正确的域名。

4. 如何检查我的应用程序是否允许明文流量?

运行应用程序并使用网络流量监视工具检查网络请求是否已加密。

5. 如何保持我的应用程序的安全性?

定期更新您的应用程序并遵循 Android 开发人员的最佳做法,以保持您的应用程序的安全性。