• 从Android 9(API级别28)开始,默认情况下禁用明文支持。


     在生产环境中强制使用https,但在调试模式下允许使用明文的方法 它仅在api 23+上使用

    在build.gradle中:

    // Put this in your buildtypes debug section:
    manifestPlaceholders = [usesCleartextTraffic:"true"]
    
    // Put this in your buildtypes release section
    manifestPlaceholders = [usesCleartextTraffic:"false"]

    在AndroidManifest.xml中的application标签中

    android:usesCleartextTraffic="${usesCleartextTraffic}"
     android:usesCleartextTraffic="true"

    其它方法“

    删除了这一行

    android:networkSecurityConfig="@xml/network_security_config" 
    application 添加
    android:usesCleartextTraffic="true"

    改造配置类OKHttp创建时添加了一个连接规范

     .connectionSpecs(CollectionsKt.listOf(ConnectionSpec.MODERN_TLS, ConnectionSpec.CLEARTEXT))
    OkHttpClient okHttpClient = new OkHttpClient.Builder()
            .readTimeout(10, TimeUnit.SECONDS)
            .connectTimeout(10, TimeUnit.SECONDS)
            .cache(null)
            .connectionSpecs(CollectionsKt.listOf(ConnectionSpec.MODERN_TLS, ConnectionSpec.CLEARTEXT))
            .addInterceptor(new NetworkInterceptor(context))
            .addInterceptor(createLoggingInterceptor())
            .addInterceptor(createSessionExpiryInterceptor())
            .addInterceptor(createContextHeaderInterceptor())
            .build();
    <network-security-config>
        <base-config cleartextTrafficPermitted="true">
            <trust-anchors>
                <certificates src="system" />
                <certificates src="user" />
            </trust-anchors>
        </base-config>
        <domain-config cleartextTrafficPermitted="true">
            <domain includeSubdomains="true">api.endv.cn</domain>
            <domain includeSubdomains="true">im.endv.cn</domain>
            <domain includeSubdomains="true">pay.endv.cn</domain>
            <domain includeSubdomains="true">endv.cn</domain>
        </domain-config>
    </network-security-config>
  • 相关阅读:
    关于蜂窝物联技术 NBIoT 的一些观点
    SSL安全证书-概念解析
    使用 openssl 生成证书
    spring-实现配置文件读取
    spring技术核心概念纪要
    maven项目修改java编译版本的方式
    关于一个双机热备的问题
    关于Java的软引用及弱引用
    MQTT服务器搭建-mosquitto1.4.4安装指南
    hive 限制本地内存使用量
  • 原文地址:https://www.cnblogs.com/endv/p/13262399.html
Copyright © 2020-2023  润新知