objective-c - Mac OS 命令行程序中的定位服务

标签 objective-c macos cllocationmanager launchd

我写了一个简单的程序,它使用 Cocoa 位置服务来获取用户的当前位置。它在 MacBook Pro 上运行没有问题。但是,它不适用于 MacBook Air。

我留下了操作无法完成。 (kCLErrorDomain error 1.) 代码,我已经尝试过很多事情来修复它(例如设置权限)。在隐私设置中勾选应用程序的复选框以启用应用程序的位置服务后,它会在我启动应用程序后立即消失。

为了初始化服务,我使用了 CLLocationManager 类的 startUpdatingLocation 方法。

有什么办法可以解决这个问题吗?

最佳答案

答案很简单——我忘记为/Library/LaunchDaemons/中的 plist 文件运行的可执行文件设置权限。一个简单的 chmod 007 就解决了这个问题。

关于objective-c - Mac OS 命令行程序中的定位服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12196156/

相关文章:

objective-c - 如何更改单个 View 的亮度

objective-c - c中的模拟器/生成的switch语句范围

bash - -bash : warning: setlocale: LC_ALL: cannot change locale (en_us. utf-8)

objective-c - 在每个 CGEventPost 之间添加中断

iphone - 到达特定位置时打开 iPhone 应用程序?

iphone - NSMutablearray 将对象从索引移动到索引

ios - 在自定义表格单元格中更改 ImageView

macOS 上的 Swift : open Chrome with a URL as parameter

ios - 没有第二次调用 didUpdateToLocation

iOS。 CLLocationManager 在 didUpdateLocations 中仅接收一次位置更新