首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么使用MKLocalSearch会返回一个错误并无法加载预期的结果?

为什么使用MKLocalSearch会返回一个错误并无法加载预期的结果?
EN

Stack Overflow用户
提问于 2014-03-05 00:16:44
回答 1查看 961关注 0票数 4

我正在用Maverick开发一个Mac应用程序,在执行以下代码时,我收到了一个错误:

代码语言:javascript
复制
MKLocalSearchRequest *request = [[MKLocalSearchRequest alloc] init];
request.naturalLanguageQuery = @"Pizza Hut";
MKLocalSearch *search = [[MKLocalSearch alloc] initWithRequest:request];

[search startWithCompletionHandler:^(MKLocalSearchResponse *response, NSError *error) {
    if (response.mapItems.count == 0)
        NSLog(@"No Matches");
    else
        for (MKMapItem *item in response.mapItems) {
            NSLog(@"name = %@", item.name);
        }
}];

我只是尝试使用MKLocalSearch搜索“必胜客”,而没有在MKLocalSearchRequest上设置任何region,这样我就可以获得全球结果,而不仅仅是我附近的地方。但是这段代码无法执行,我在我的控制台中得到了以下错误:

PBRequester失败错误Domain=NSPOSIXErrorDomain Code=1“操作无法完成。操作不允许”UserInfo=0x60800067d680 {NSErrorFailingURLStringKey=https://gsp-ssl.ls.apple.com/search.arpc,NSErrorFailingURLKey=https://gsp-ssl.ls.apple.com/search.arpc}

因此,"No Matches"被打印在我的控制台中。

对为什么会发生这种事有什么想法吗?我在Capabilites中打开了地图,在我的权限中有了MapKit.frameworkcom.apple.developer.map键。这里缺少什么东西吗?谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-12 06:57:27

我必须启用“传出连接(客户端)”网络权限才能使Location正常工作。

我使用MKLocalSearch的OS应用程序的最低权利文件如下所示:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>com.apple.security.app-sandbox</key>
    <true/>
    <key>com.apple.security.network.client</key>
    <true/>
    <key>com.apple.security.personal-information.location</key>
    <true/>
</dict>
</plist>

遗憾的是,苹果的应享权利键引用没有提到这一点。也许我们应该提交一个文档错误。

此外,用于代码签名的供应配置文件(在目标中选中"Build“)必须启用"Maps”服务。您可以在开发人员门户的“证书、标识符和概要文件”部分中检查:

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22185980

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档