事件警报未在EventKit中正确创建,iOS4.3 日历同步到Google日历

事件警报未在EventKit中正确创建,iOS4.3 日历同步到Google日历,第1张

概述我有一个看似简单的教科书案例,使用EventKit创建带有警报的事件.令人沮丧的是,它不起作用.这是我正在做的事情: >使用[EKEvent eventWithEventStore:]创建一个EKEvent并填写一堆其属性 >使用[myEvent addAlarm:[EKAlarm alarmWithRelativeOffset:]]添加警报 >使用[myEventStore saveEvent: 我有一个看似简单的教科书案例,使用EventKit创建带有警报的事件.令人沮丧的是,它不起作用.这是我正在做的事情:

>使用[EKEvent eventWithEventStore:]创建一个EKEvent并填写一堆其属性
>使用[myEvent addAlarm:[EKAlarm alarmWithrelativeOffset:]]添加警报
>使用[myEventStore saveEvent:span:error:]保存事件

关于整个过程的唯一“不寻常”的事情是,我使用的是旧版iOS手机(iPhone 4上的iOS4.3.3),而且我正在使用的所有日历都会同步到Google日历.

我有一个日历(我们称之为Calendara),它在Google日历中设置为新事件提供30分钟的自动警报,而另一个日历(CalendarB)则没有设置为任何自动警报.

这是我看到的破碎行为:

>当我向Calendara添加具有某种非零relativeOffset(例如5分钟)的EKAlarm时,日历会忽略我的偏移并将其设置为30分钟
>当我在CalendarB中执行相同 *** 作时,我的警报会被完全忽略,并且事件最终没有警报

有什么奇怪的:如果我将relativeOffset设置为零,那么一切都非常适合这种特殊情况! (在Calendara和CalendarB情况下,都正确添加了零偏移警报).顺便说一句,如果我根本不创建警报,Calendara中的事件仍然会发出30分钟的警报.我想对此没什么可做的.

我还尝试在事件创建后立即保存事件,然后立即向已保存的实例添加警报并再次保存.这没有用.

如果我通过手机上的原生日历应用程序手动创建带有警报的事件,则警报可以很好地工作,因此我知道可以将任意警报同步到Google日历 – 问题是如何通过代码执行此 *** 作.

如何使我的事件警报正常运行?

解决方法 这在iOS 4.2上对我有用,看看它是否对你有所帮助

EKEventStore* eventStore = [[EKEventStore alloc] init]; EKEvent* event = [EKEvent eventWithEventStore:eventStore]; // set startDate,endDate,Title,location,etc.[event addAlarm:[EKAlarm alarmWithrelativeOffset:60.0f * -5.0f]]; // 5 min[event setCalendar:[eventStore defaultCalendarForNewEvents]];NSError* error = nil;BOol success = [eventStore saveEvent:event span:EKSpanThisEvent error:&error];
总结

以上是内存溢出为你收集整理的事件警报未在EventKit中正确创建,iOS4.3 /日历同步到Google日历全部内容,希望文章能够帮你解决事件警报未在EventKit中正确创建,iOS4.3 /日历同步到Google日历所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1020952.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存