使用PhoneGap / jQuery Mobile以编程方式在iPhone / Android日历中添加事件?

时间:2011-10-07 09:20:36

标签: javascript android ios jquery-mobile cordova

如何在iOS / Android中的JavaScript / jQuery Mobile / PhoneGap应用程序中创建日历事件?

有没有,例如,PhoneGap插件?在官方存储库中没有看到任何内容。

  • 对于iOS,Event Kit框架(iOS 4.0+)似乎能够add an event

5 个答案:

答案 0 :(得分:5)

根据以下评论,it is now possible to create an iCal file for iOS and a vcs file for Android。它需要浏览器/设备嗅探,或者让用户做出选择,但至少应该是可能的。

答案 1 :(得分:5)

我意识到这是一个古老的问题,但现在有plugin。它有它的缺点,但有效。在撰写本文时,它支持以下功能:

  • iOS支持:创建(静默),更新(静默)和删除(静默)事件
  • Android> = 4:创建(交互式和静默),更新(不支持),删除(静默)事件
  • Android< 4:创建(交互式),更新(不支持),删除(不支持)事件

下面是代码示例:

  var startDate = new Date(2014,2,15,18,30,0,0,0);
  var endDate = new Date(2014,2,15,19,30,0,0,0);
  var title = "My nice event";
  var newTitle = "My new nice event";
  var location = "Home";
  var notes = "Some notes about this event.";
  var success = function(message) { 
     alert("Success: " + JSON.stringify(message)); 
  };
  var error = function(message) { 
     alert("Error: " + message); 
  };

  window.plugins.calendar.createEvent(title,location,notes,startDate,endDate,success,error);

  window.plugins.calendar.modifyEvent(title,location,notes,startDate,endDate,newTitle,location,notes,startDate,endDate,success,error);

  window.plugins.calendar.deleteEvent(newTitle,location,notes,startDate,endDate,success,error);

答案 2 :(得分:2)

目前,PhoneGap development roadmap不包含日历支持。但是,有很多要求。请参阅此帖为“Calendar plugin following W3C calendar API”,其中指向PhoneGap-Calendar-Plugin project,其中包含对Android的一些初始日历支持。

答案 3 :(得分:1)

使用最新的API将事件添加到iOS日历非常简单。 但是,您需要创建自己的插件才能执行此操作。

因为这是特定于平台的,所以在有正式的PhoneGap插件之前,时间会过去。

答案 4 :(得分:1)

我找到了适用于Android和iOS的插件,但它们没有相同的JavaScript API,因此您必须为两个系统编写不同的代码或添加另一个层。它们也不是最新版本,需要修复才能与Cordova 2.2.0一起运行。更糟糕的是,文档很简短:

的Android

Dcheng's Android Plugin能够创建,删除和搜索日历事件,但完全过时,不会按原样运行。使用Android 4.0有一个Calendar Provider可以让事情变得更容易,但我仍然没有找到一个好的插件。 jbajor只能添加活动,twistandshout只能搜索活动。

的iOS

Felixactv8's iOS Plugin能够创建,删除和搜索日历事件。请注意,在iOS中没有事件ID,因此搜索您的活动将很有趣。 author explains如何在xcode中添加两个所需的框架:

  

iphone日历使用2个框架,EventKit.framework和   EventKitUI.framework。

     

如果单击xcode图标,您应该看到项目图标和   目标图标。单击目标图标,然后单击构建阶段。   单击“使用库链接二进制文件的下拉列表。单击加号   在窗口底部签名,然后搜索两个框架。加   这两个框架,重建项目并运行它。