我在运行时遇到以下错误:
此应用已崩溃,因为它试图在没有使用说明的情况下访问隐私敏感数据。该应用程序的Info.plist必须包含一个NSMotionUsageDescription键,其中包含一个字符串值,向用户解释应用程序如何使用此数据。
我已将密钥添加到plist文件中:
<!-- Motion -->
<key>NSMotionUsageDescription</key>
<string>This app needs to be able to access your motion use</string>
这是AppDelegate中的代码:
if ([CMMotionActivityManager isActivityAvailable])
{
CMMotionActivityManager *motionManager = [[CMMotionActivityManager alloc] init];
NSOperationQueue *motionActivityQueue = [[NSOperationQueue alloc] init];
[motionManager queryActivityStartingFromDate:[NSDate distantPast] toDate:[NSDate date] toQueue:motionActivityQueue withHandler:^(NSArray *activities, NSError *error) {
if (error && (error.domain == CMErrorDomain) && (error.code == CMErrorMotionActivityNotAuthorized)) {
} else if (activities || !error) {
}
dispatch_async(dispatch_get_main_queue(), ^{
});
}];
}
为什么我会继续这次崩溃?我删除了所有派生文件夹,清理了项目。但仍然问我钥匙!它是苹果虫吗?
答案 0 :(得分:0)
我发现了问题。我希望总有一天能帮助别人。转到项目设置 - &gt;信息 - &gt;在“自定义iOS目标属性”部分下,找到所需的背景模式,并在此处添加您的密钥。我不知道为什么我的所有plist文件密钥都不在这里。