macOS 命令行实用程序与 CoreBluetooth 权限 (iTerm)

macOS command line utility vs. CoreBluetooth permissions (iTerm)

我正在为 macOS 编写一个与 BLE 设备交互的命令行工具。我有关于权限的问题:

如果我在命令行上启动我的工具,它会被 OS 杀死。只有当我通过调试器启动它时,图形警报器才会出现以允许蓝牙权限。

我的包含 NSBluetoothAlwaysUsageDescription 密钥的 plist 嵌入为二进制文件中的 __TEXT __info_plist。现在,这是否已经不足以让命令行工具访问受安全保护的 OS 设施?

好的,在设置赏金之后,我突然想到所有命令行应用程序都从 iTerm(我正在使用的)继承它们的权限。授予 iTerm 蓝牙权限使其正常工作。

然后我想稍微调整一下赏金......我的命令行程序是否可以检测到这种(继承的)权限的缺失,从而防止崩溃,而是显示指令警报?