2

我假设放入NSBluetoothPeripheralUsageDescriptioninfo.plist 将自动触发警报视图(在适当的时间),其中将显示 InfoPlist.strings(当前语言)中定义的(本地化)错误。由于文档中的以下声明,我假设了类似的事情:

NSBluetoothPeripheralUsageDescription (String - iOS) 这个键可以让你描述你的应用使用蓝牙的原因。当系统提示用户允许使用时,您为此键提供的值将显示为警报的一部分。

看看这部分:

当系统提示用户允许使用...

IMO,这意味着警报将自动弹出,而不是由我手动在代码中弹出。

我在用 :

CoreBluetooth框架及其许多类,例如:

CBPeripheral, CBCharacteristic,CBCentralManager等等,所以我想这个警报应该会弹出。当然,我可以在第一次使用蓝牙时自己弹出警报视图,但我认为这些 info.plist 键的重点是,实际上是自动警告用户......

4

2 回答 2

0

不完全的...

我不想iOS 在应用程序首次运行时自动弹出每个权限请求对话框。最好让我显示“我可以使用相机吗?” 用户第一次进入我的应用程序中使用相机的部分,以及在使用该部分时“我可以使用蓝牙”。

因此,字符串是必需的,因此不会向用户呈现通用的“应用程序想要使用蓝牙”请求。相反,您必须提供适当的信息字符串(当然,取决于审阅者的意见)。

但在您希望它显示之前,它不会显示给用户。

于 2017-04-27T13:34:00.780 回答
0

也许您已经回答了系统弹出窗口并在 iOS 设置中有条目?在这种情况下,iOS 将不再询问。

于 2017-04-27T13:35:30.517 回答