在 iOS 上使用 Cordova 日历插件列出日历事件

Posted

技术标签:

【中文标题】在 iOS 上使用 Cordova 日历插件列出日历事件【英文标题】:Listing calendar events using Cordova calendar plugin on iOS 【发布时间】:2015-05-13 12:50:10 【问题描述】:

我已经在 ionic 应用程序中实现了 ngCordova $cordovaCalendar 插件 http://ngcordova.com/docs/plugins/calendar/1(不重要),并且我正在使用 .listEventsInRange() 方法,该方法在 android 上按预期运行。我意识到这种方法在 ios 上不起作用,唯一可用的方法是 .findEvent()。但是,我需要在两个平台上使用相同的功能来进行暗示性风格搜索。

我已经尝试过 findAllEventsInNamedCalendar() 方法,但这只会返回未来发生的事件,而且我关注的是过去、现在和/或未来范围内的事件。

我的问题是,在给定日期范围的情况下,如何从 iOS 设备中找到事件列表?如果您不知道自己在寻找什么,那么“准确地”查找事件似乎有点愚蠢......似乎在黑暗中有点刺痛。

我想这个问题有两个方面:有没有人有一个使用 iOS 的科尔多瓦日历插件列出事件的工作示例?有没有人举个例子说明如何使用findEvent()

为任何帮助干杯!

【问题讨论】:

【参考方案1】:

我发现官方文档在我的 ios 设备 (iphone 6) 上不适合我

我最终去了这里:http://ngcordova.com/docs/plugins/calendar/ 请注意,文档没有告诉您 find 事件需要一个对象而不是参数列表。

我在日历上创建了 2 个 apt。一个上午 9 点到 10 点,下午 5 点到 6 点。然后我使用下面的代码来查找 2 个日期之间的 apts(使用 d 和 d1 的值)

var d = new Date(2015, 5, 10, 9,30,0,0,0);
var d1 = new Date(2015, 5, 10, 10,30,0,0,0);
$cordovaCalendar.findEvent(
    title: '',
    location: '',
    notes: '',
    startDate: d,
    endDate: d1
).then(function (result) 
    console.log('results', JSON.stringify(result, null, '\t'));
    console.log(new Date());
    console.log(d, d1);
, function (err) 
    console.error('err', err);
);

希望对你有帮助

【讨论】:

以上是关于在 iOS 上使用 Cordova 日历插件列出日历事件的主要内容,如果未能解决你的问题,请参考以下文章

Cordova IOS 7.1 日历是只读的。

Cordova 日历插件添加与会者

使用 Cordova 应用程序在 iOS 上列出附近的 wifi 网络

完整日历,如何隐藏时间列并按顺序列出事件

ionic Cordova 使用媒体插件在 IOS 上录制音频失败

Cordova 插件不适用于 ionic