uni-app 安卓6.0 接口使用https不可用 只有使用http可用

uni-app 安卓6.0 接口使用https不可用 只有使用http可用

开发环境 版本号 项目创建方式
Windows win10 HBuilderX

产品分类:uniapp/App

PC开发环境操作系统:Windows

PC开发环境操作系统版本号:win10

HBuilderX类型:正式

HBuilderX版本号:3.2.9

手机系统:Android

手机系统版本号:Android 6.0

手机厂商:vivo

手机机型:y66l

页面类型:vue

打包方式:云端

示例代码:

const baseUrl = 'http://baidu.com'
export const request = {
    post: function({api,params, method='POST',  header = {'content-type':'application/x-www-form-urlencoded'}}) {
        return new Promise((resolve, reject) => {
            let data = params;
            let url = baseUrl + api
            uni.request({
                url,
                data,
                method,
                header,
                success: (res) => {
                    console.log(res)
                    if(res.data.status === 200) {
                        resolve(res.data.data)
                    } else {
                        reject(res.data.msg)
                    }
                }
            })
        })
    }
}

操作步骤:

接口访问测试

预期结果:

https与http可在低版本安卓中正常使用

实际结果:

只有http可正常访问,估计在新版本安卓中可以正常访问,鸿蒙2.0正常 https与http均正常。

bug描述:

接口https访问不了只有换回http可以正常使用

苹果6p 8p 正常
安卓华为鸿蒙2.0正常

手上只有一台vivo老机子 安卓6.0打包安装后https接口无法访问,只有换成http可正常访问。


更多关于uni-app 安卓6.0 接口使用https不可用 只有使用http可用的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

夜神模拟器 安卓7.1 https http均正常

更多关于uni-app 安卓6.0 接口使用https不可用 只有使用http可用的实战教程也可以访问 https://www.itying.com/category-93-b0.html


这个问题是由于Android 6.0系统对TLS协议版本支持的限制导致的。

Android 6.0(API 23)默认支持的TLS协议版本较低,而现代HTTPS服务器通常要求使用TLS 1.2或更高版本。当服务器要求较高的TLS版本时,Android 6.0设备可能无法建立安全连接。

解决方案:

  1. 配置网络安全配置(推荐)manifest.json中添加网络安全配置,允许使用较旧的TLS版本:
    {
      "app-plus": {
        "networkSecurity": {
          "cleartextTraffic": true,
          "tlsVersion": "1.1"
        }
      }
    }
回到顶部