1、我们将应用A的网络数据权限关闭,将应用B的网络数据权限打开;
2、我们打开应用A,会跳出“是否允许使用无线数据?”,点击不允许;
3、然后打开应用B直接没有网络,反着也同样效果
【必须在应用A和B的网络数据权限同时打开的情况下,才能正常使用】
- 发布:2024-07-16 16:44
- 更新:2025-12-06 13:19
- 阅读:347
产品分类: uniapp/App
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: macOS 12.2.1
HBuilderX类型: 正式
HBuilderX版本号: 4.15
手机系统: iOS
手机系统版本号: iOS 15
手机厂商: 苹果
手机机型: iphone 13 pro
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
应用A与应用B各自的网络数据权限是独立的,不会互相影响
应用A与应用B各自的网络数据权限是独立的,不会互相影响
实际结果:
必须在应用A和B的网络数据权限同时打开的情况下,才能正常使用
必须在应用A和B的网络数据权限同时打开的情况下,才能正常使用
bug描述:
1、公司创建了一个应用A,分别创建了安卓和苹果证书,没有发布到应用市场;
2、最近公司有规划上app store应用市场,所以我们使用同一套代码,创建了应用B,苹果证书都是重新生成的;
3、应用A和应用B的appid都是不同的,bundleId也是独立的;
4、应用A使用的安心打包,应用B使用的是传统打包(上架appstore)
4、功能测试没有问题,但是发现读取网络权限的时候会互相影响,例如:我们将应用A的网络数据权限关闭,将应用B的网络数据权限打开,这个时候我们打开应用A,会跳出“是否允许使用无线数据?”,点击不允许,然后打开应用B直接没有网络,必须在应用A和B的网络数据权限同时打开的情况下,才能正常使用。
请问这是什么原因导致的呢?
3 个回复
1***@163.com
兄弟 解决了吗?
2***@qq.com
大佬,解决了吗
jgj_app
当两个应用的域名相同时,nslocalnetworkusagedescription(正式名称为NSLocalNetworkUsageDescription)需独立配置,避免iOS系统级权限缓存导致互相影响。配置方法如下:
在manifest.json中配置(推荐):
json
复制代码
"app-plus": {
"distribute": {
"ios": {
"privacyDescription": {
"nslocalnetworkusagedescription": "应用A需访问本地网络以连接智能家居设备"
}
}
}
}
应用B同理,但描述内容需体现其自身业务场景(如"应用B需访问本地网络实现设备调试")。
直接修改Info.plist:
xml
复制代码
<key>NSLocalNetworkUsageDescription</key>
<string>您的应用需要访问本地网络的具体用途说明</string>
关键注意事项:
即使域名相同,必须为每个应用单独配置,描述内容需真实反映各自业务需求
描述需明确具体用途(如"用于局域网设备控制"),避免审核被拒
iOS 14+强制要求此字段,缺失会导致网络请求失败
避免启动时立即请求权限,应在业务触发时再调用网络API
参考文档:iOS隐私信息访问列表 和 uni-app iOS原生资源配置指南