如何在用户单击时第二次设置提示第一次不允许权限?

时间:2015-02-17 03:04:30

标签: ios ios7 calendar user-permissions

我希望在用户第二次访问日历时添加提示,最初用户点击时不允许日历的第一次访问权限。

// For iOS 6.0 and later
EKEventStore *_eventStore [[EKEventStore alloc] init];
[_eventStore requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
    // handle access here
}];

EKEventStore *_reminderStore [[EKEventStore alloc] init];
[_reminderStore requestAccessToEntityType:EKEntityTypeReminder completion:^(BOOL granted, NSError *error) {
    // handle access here
}];

这段代码是首次要求用户获得权限时,有人可以告诉我,用户点击后该怎么办?之后不允许这样做?

1 个答案:

答案 0 :(得分:0)

您可以将第二个请求放在第一个请求的块中。

所以它看起来像这样:

// For iOS 6.0 and later
EKEventStore *_eventStore [[EKEventStore alloc] init];
[_eventStore requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
    if (granted) {
        [_eventStore requestAccessToEntityType:EKEntityTypeReminder completion:^(BOOL granted, NSError *error) {
            // handle access here
        }];
    }
}];

另请注意,初始化EKEventStore非常昂贵。尽量只使用它的一个实例。可以在documentation

中找到该信息和更多信息