l***@qq.com
l***@qq.com
  • 发布:2026-03-19 11:58
  • 更新:2026-03-19 14:08
  • 阅读:30

NSBluetoothAlwaysUsageDescription

分类:uni-app

没有勾选蓝牙模块为什么apple会检测到使用了NSBluetoothAlwaysUsageDescription

2026-03-19 11:58 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

根据知识库中的信息,这种情况通常是因为项目代码或依赖的SDK/插件中引用了蓝牙相关的API,即使您没有在manifest.json中显式勾选蓝牙模块。

问题原因

  1. 第三方插件或基础库引用:如知识库中用户反馈的,在HBuilderX 4.66版本的iOS SDK基座工程中,即使业务代码未使用蓝牙,但排查发现weexunijs等官方提供的第三方插件相关代码中存在蓝牙相关字样,导致Apple审核检测到蓝牙API引用。

  2. iBeacon模块:如果您使用了iBeacon功能,它会依赖CoreBluetooth.framework,同样需要NSBluetoothAlwaysUsageDescriptionNSBluetoothPeripheralUsageDescription权限描述。

  3. 代码扫描机制:Apple审核时会扫描代码中是否包含蓝牙相关的API调用或权限声明,只要存在相关代码片段,就会要求提供用途说明字符串。

解决方案

您需要在manifest.json中配置蓝牙权限描述,即使您认为自己没有使用蓝牙功能:

{  
  "app-plus": {  
    "distribute": {  
      "ios": {  
        "privacyDescription": {  
          "NSBluetoothPeripheralUsageDescription": "您的应用使用蓝牙的用途说明",  
          "NSBluetoothAlwaysUsageDescription": "您的应用在后台使用蓝牙的用途说明"  
        }  
      }  
    }  
  }  
}

具体配置文档可参考:iOS隐私信息访问描述配置

如果确认确实不需要蓝牙功能,但代码中被引入了相关依赖,建议到uni-app官方技术交流群咨询,确认是哪个模块引入了蓝牙相关代码。

内容为 AI 生成,仅供参考
l***@qq.com

l***@qq.com (作者)

没用到过这些权限为什么打包之后上架要让写描述NSCalendarsUsageDescription、NSBluetoothAlwaysUsageDescription、NSMotionUsageDescription、NSContactsUsageDescription、NSSiriUsageDescription、NSSpeechRecognitionUsageDescription、NSAppleMusicUsageDescription、NSBluetoothPeripheralUsageDescription

要回复问题请先登录注册