当iCal不在后台时,无法从iCal删除事件

鲁韦埃纳

收到通知后,我正尝试从iCal删除事件。仅当iCal在后台时,事件才会被删除。如果在关闭iCal之后发送了相同的通知,则不会删除该事件。我正在尝试使用MyCalendar.m中的此方法访问iCal

+ (void)requestAccess:(void (^)(BOOL granted, NSError *error))callback {
  if (eventStore == nil) {
    eventStore = [[EKEventStore alloc] init];
  }
  [eventStore requestAccessToEntityType:EKEntityTypeEvent completion:callback];
}

并试图使用Appdelegate.m中的以下方法删除事件

[MyCalendar requestAccess:^(BOOL granted, NSError *error) {
            if (granted) {
                if ([[self.launchOptions objectForKey:@"type"] isEqualToString:@"remainder"] || [[self.launchOptions objectForKey:@"type"] isEqualToString:@"cancelAppointment"]) {
                    if ([[self.launchOptions objectForKey:@"type"]
                         isEqualToString:@"cancelAppointment"]) {
                        if (![MyCalendar removeEventWithEventIdentifier:
                              [self.launchOptions objectForKey:@"eventId"]]) {
                        }
                    }
                }
            }
       }];

正在使用MyCalendar.m中的以下方法从iCal删除事件

+ (BOOL)removeEventWithEventIdentifier:(NSString *)identifier {
  EKEvent *event2 = [eventStore eventWithIdentifier:identifier];
  BOOL result = NO;
  if (event2 != nil) {
    NSError *error = nil;
    result = [eventStore removeEvent:event2 span:EKSpanThisEvent error:&error];
  }
  return result;
}

提前致谢!

萨拉·莫汉(Salal Mohan)

您必须在使用之前初始化事件存储对象。

    + (BOOL)removeEventWithEventIdentifier:(NSString *)identifier {
        EKEventStore* eventStore = [[EKEventStore alloc] init];
        EKEvent *event2 = [eventStore eventWithIdentifier:identifier];
        BOOL result = NO;
        if (event2 != nil) {
        NSError *error = nil;
        result = [eventStore removeEvent:event2 span:EKSpanThisEvent        error:&error];
        }
      return result;
      }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从iCal事件中获取描述

来自分类Dev

从服务器监听iCal事件更改

来自分类Dev

来自ICal的重复事件的NodeJS问题

来自分类Dev

我无法使用 iCal4j 正确设置事件的日期

来自分类Dev

在Android上将页面留在后台时触发“ beforeunload”事件

来自分类Dev

无法识别通过Django提供的iCal Feed

来自分类Dev

在线ical feed无法正常工作

来自分类Dev

将Google日历与iCal同步时出错

来自分类Dev

iCal库可迭代特定实例的重复事件

来自分类Dev

生成iCal事件并将其发送到Outlook

来自分类Dev

在 Ical.net 中为事件添加警报

来自分类Dev

ical4j - 根据 UID 查找事件

来自分类Dev

异步任务不在后台运行?

来自分类Dev

udev脚本不在后台运行

来自分类Dev

线程似乎不在后台运行

来自分类Dev

为什么BroadcastReceiver不在后台运行?

来自分类Dev

当应用程序不在最近时,在后台广播接收器

来自分类Dev

如何在使用Ical时停止夏令时更改?

来自分类Dev

让事件在后台更改变量

来自分类Dev

在后台线程中监听事件

来自分类Dev

让事件在后台更改变量

来自分类Dev

iCal时区问题

来自分类Dev

当应用程序在后台时,iOS RemoveDeliveredNotifications(string[] identifier) 不会删除通知

来自分类Dev

在后台运行命令时无法在Shell脚本中写入文件

来自分类Dev

PHP shel_exec不在后台运行

来自分类Dev

iOS 7:音频无法在后台播放

来自分类Dev

Android短信应用无法在后台运行

来自分类Dev

无法在后台访问HealthKit数据

来自分类Dev

Android定位服务无法在后台运行