用户不允许权限时CMMotionActivityManager回调

时间:2014-06-18 13:11:53

标签: ios core-motion cmmotionmanager

我使用Privacy Prompts项目中的以下代码来获取动作权限。

- (void)requestMotionAccessData {
    self.cmManager = [[CMMotionActivityManager alloc] init];
    self.motionActivityQueue = [[NSOperationQueue alloc] init];
    [self.cmManager startActivityUpdatesToQueue:self.motionActivityQueue withHandler:^(CMMotionActivity *activity) {
        /* 
         * Do something with the activity reported
         */

        NSLog(@"requestMotionAccessData");
        [self alertViewWithDataClass:Motion status:NSLocalizedString(@"ALLOWED", @"")];
        [self.cmManager stopActivityUpdates];
    }];
}

如果用户不允许动作许可,该怎么办?我得到一些回调吗? 如果没有,是否有另一种方法来实现这一目标。当用户选择AllowDon't Allow

时,我想要回调

1 个答案:

答案 0 :(得分:2)

你可以......选择错误:

[stepCounter queryStepCountStartingFrom:[NSDate date]
                                     to:[NSDate date]
                                toQueue:[NSOperationQueue mainQueue]
                            withHandler:^(NSInteger numberOfSteps, NSError *error) {
                                if (error != nil && error.code == CMErrorMotionActivityNotAuthorized) {
                                    // The app isn't authorized to use motion activity support.
}

从这里开始:iOS - is Motion Activity Enabled in Settings > Privacy > Motion Activity