返回顶部
首页 > 资讯 > 移动开发 >Android动态配置network_security_config
  • 110
分享到

Android动态配置network_security_config

androidgradle 2023-09-01 09:09:41 110人浏览 八月长安
摘要

相信目前Android开发中,基本上网络请求都是使用https协议的了,这样对我们的数据安全有了一定的保障。但是通常在测试阶段,测试人员往往需要进行抓包测试,可以实时查看数据请求情况。这就需要我们需要

相信目前Android开发中,基本上网络请求都是使用https协议的了,这样对我们的数据安全有了一定的保障。但是通常在测试阶段,测试人员往往需要进行抓包测试,可以实时查看数据请求情况。这就需要我们需要区分好生产环境和测试环境的网络安全配置了。这时就需要我们用到network_security_config的文件配置了。
下面有三种方法实现这个需求:

第一种: debug-overrides

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

通过debug-overrides来实现debug打包时,信任用户的证书,即可以实现代理抓包。

第二种:利用 manifestPlaceholders

这个方法类似于打渠道包的原理,通过gradle来动态配置不同的network_security_config文件。

1、创建network_security_config_debug,network_security_config_release

network_security_config_debug :

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

network_security_config_release :

<network-security-config>    <base-config cleartextTrafficPermitted="false"/>network-security-config>

2、

在app模块的build.gradle文件中添加以下代码:

android {    ...    buildTypes {        debug {            ...            manifestPlaceholders = [                network_security_config: "@xml/network_security_config_debug"            ]        }        release {            ...            manifestPlaceholders = [                network_security_config: "@xml/network_security_config_release"            ]        }    }}

3、

在AndroidManifest.xml文件中添加以下代码:

<application    android:networkSecurityConfig="${network_security_config}"    ... >    ...application>

这样就可以动态配置network_security_config了。

第三种:resValue

其实这种方法,和第二种是异曲同工的方法,都是利用gradle进行动态编译配置,只不过写法不一样罢了。
首先都是需要和第二步那样创建network_security_config_debug,network_security_config_release两个文件。
然后在app模块的build.gradle文件中添加以下代码:

android {    ...    buildTypes {        debug {            ...           resValue "xml", "network_security_config", "@xml/network_security_config_debug"        }        release {            ...          resValue "xml", "network_security_config", "@xml/network_security_config_release"        }    }}

然后在AndroidManifest.xml文件中添加以下代码:

<application    ...   android:networkSecurityConfig="@xml/network_security_config"    ... >    ...application>

来源地址:https://blog.csdn.net/zengke1993/article/details/131306618

--结束END--

本文标题: Android动态配置network_security_config

本文链接: https://lsjlt.com/news/387934.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Android动态配置network_security_config
    相信目前Android开发中,基本上网络请求都是使用https协议的了,这样对我们的数据安全有了一定的保障。但是通常在测试阶段,测试人员往往需要进行抓包测试,可以实时查看数据请求情况。这就需要我们需要...
    99+
    2023-09-01
    android gradle
  • Java-springboot动态加载jar包,动态配置
    一、概述 1、背景 ​ 目前数据治理服务中有众多治理任务,当其中任一治理任务有改动需要升级或新增一个治理任务时,都需要将数据治理服务重启,会影响其他治理任务的正常运行。 2、目标 能够动态启动、停止任一治理任务能够动态升级、添加治理任务启动...
    99+
    2023-08-21
    spring boot jar java
  • vps动态ip怎么配置
    1. 打开VPS的终端,输入以下命令来更新系统和软件包:```sudo apt-get update && sudo apt-get...
    99+
    2023-06-14
    vps动态ip vps
  • 【Windows】手动配置静态IPv4
    【Windows】手动配置静态IPv4 1、背景2、设置静态IP 1、背景 在一些场合需要手动设置静态ip。 IP地址有两个版本,IPv4和IPv6。 目前绝大多数的网络设备支持IPv4,但不一定支持IPv6,因为IPv4.历史...
    99+
    2023-08-21
    网络 服务器 运维
  • 动态vps怎么配置iis
    要配置IIS(Internet Information Services)服务器在动态VPS上,您可以按照以下步骤进行操作:1. 登录到您的VPS。使用SSH客户端(例如PuTTY)连接到您的VPS服务器。2. 安装IIS。运行以下命令...
    99+
    2023-08-11
    动态vps vps
  • 如何配置OSPF动态路由
    小编给大家分享一下如何配置OSPF动态路由,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!OSPF开放式最短路径优先协议,是目前网络中应用最广泛的路由协议之一。属于...
    99+
    2023-06-27
  • nginx动态更新怎么配置
    要在Nginx中实现动态更新,可以使用以下两种方法之一: 使用Nginx Plus:Nginx Plus是Nginx官方提供的商...
    99+
    2023-10-22
    nginx
  • SpringCloudGateway动态路由配置详解
    目录路由动态路由模型实体类动态路径配置路由模型JSON数据路由 gateway最主要的作用是,提供统一的入口,路由,鉴权,限流,熔断;这里的路由就是请求的转发,根据设定好的某些条件...
    99+
    2023-03-19
    SpringCloud Gateway动态路由 SpringCloud Gateway
  • Mybaits配置文件之动态SQL配置备忘录
    动态参数拼接的查询语句–传入参数类型为自定义数据类型<select id="queryMessageList" parameterType="com.imooc.bean.Message" resultMap="Mes...
    99+
    2023-05-31
    mybaits 配置文件 动态
  • 动易CMS动态页模板配置教程
    关键字描述:配置 教程 模板 动态   管理 SiteFactory&trade PowerEasy&r 本管理主要配置用户登录、注册页模板等功能页和成功、错误信息页、投票结果、签写留言、在线用户...
    99+
    2022-06-12
    配置 教程 模板 动态 管理 SiteFactory&trade PowerEasy®
  • Linux系统如何配置动态IP、静态IP
    这篇文章将为大家详细讲解有关Linux系统如何配置动态IP、静态IP,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1. 配置动态IP(dhcp)本例的操作系统是Centos 7。\1. 进入网络脚本配置目...
    99+
    2023-06-28
  • spring boot 配置动态刷新详解
    本文测试使用的springcloud版本为: Dalston.SR1 很多朋友只知道springcloudconfig可以刷新远程git的配置到内存中, 却不知道springclou...
    99+
    2024-04-02
  • 【Java】Spring Boot配置动态数据源
    SpringBoot配置动态数据源 一、动态多数据源的配置 1.1 创建动态数据源 通过实现Spring提供的AbstractRoutingDataSource类,可以实现自己的数据源选择逻辑,从而可...
    99+
    2023-09-15
    java spring boot 开发语言
  • java动态获取nacos配置文件
    前言: 在不启动服务的情况下,修改nacos配置文件,可以动态的获取到配置文件的信息,实现动态刷新的效果。 文章目录 1、依赖jar包2、相关代码3、注意事项 1、依赖jar包 ...
    99+
    2023-09-20
    java spring junit
  • java动态修改nacos的yml配置
    本文只介绍修改方案,没有对方案的可靠性进一步分析。如果涉及的nacos配置项很多,更建议采用数据库表单独存储,并对其进行增删改查。 1、需求 假设nacos上有一个test-dev.yml配置文...
    99+
    2023-09-13
    java nacos配置 yml
  • 服务器动态CDN怎么配置
    配置服务器动态CDN可以按照以下步骤进行操作:1. 选择合适的CDN提供商:根据自己的需求选择合适的CDN提供商。2. 注册CDN服...
    99+
    2023-09-05
    cdn 服务器
  • BIRT怎么配置动态数据源
    小编今天带大家了解BIRT怎么配置动态数据源,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“BIRT怎么配置动态数据源”的知识吧。BI...
    99+
    2023-06-03
  • Jasper如何配置动态数据源
    Jasper如何配置动态数据源,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Jasper 本身是不支持动态数据源的,能用的解决方式是通过 api 自定义数据源,...
    99+
    2023-06-03
  • SpringCloud Gateway动态路由怎么配置
    这篇“SpringCloud Gateway动态路由怎么配置”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Spri...
    99+
    2023-07-05
  • informix-online动态服务器 Client/Server配置
    一.与本地服务器的连接方式 与本地数据库服务器有两种连接方式: 1.1.通过共享内存。当应用和数据库服务器在同一台主机上时,推荐使用这种方式。在这种方式下,应用与online系统连接到同一段共享内存。应用把...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作