所以我的info.plist有:
<key>NSBluetoothPeripheralUsageDescription</key>
<string>Bluetooth is required bla bla.</string>
我什至已经将其本地化为两种受支持的语言。
然后添加了InfoPlist.strings文件并添加:
"NSBluetoothPeripheralUsageDescription" = "Bluetooth is required bla bla bla";
并对其进行本地化...
在针对应用目标的功能中,我为背景模式添加了蓝牙。
我只使用标准的BLE api,没有外部库。
为什么我不断收到以下电子邮件:
亲爱的开发人员,
我们发现您的应用“ bla”最近交付时出现了一个或多个问题。请更正以下问题,然后重新上传。
Info.plist文件中的缺少目的字符串-您的应用代码引用了一个或多个访问敏感用户数据的API。该应用程序的Info.plist文件应包含一个NSBluetoothPeripheralUsageDescription密钥,该密钥具有面向用户的目的字符串,可以清晰,完整地说明您的应用程序为何需要数据。
?
答案 0 :(得分:2)
您应该进一步说明为什么将蓝牙用于密钥NSBluetoothPeripheralUsageDescription。
应用程序提供商必须与您共享使用特定服务的原因。
<key>NSBluetoothPeripheralUsageDescription</key>
<string>Bluetooth is used to communicate with BLE devices.</string>
此外,您需要检查哪个是与项目设置关联的.plist文件。
您可以通过Info.plist文件部分的目标设置来检出它。
选择目标->构建设置->包装-> Info.plist文件
答案 1 :(得分:1)
通过将使用情况描述字符串也添加到“自定义iOS目标属性”来解决。
答案 2 :(得分:1)
使用蓝牙的描述不清楚,为什么您的APP要使用此功能,使用该功能的目的也必须清楚地描述。
答案 3 :(得分:0)
您应该添加关于当前应用程序的准确描述,以说明为什么需要使用该功能。
例如: 如果使用蓝牙来解锁自行车锁
NSBluetoothPeripheralUsageDescription
您可以通过蓝牙解锁自行车锁。