Программно добавить событие в календарь iPhone / Android с помощью PhoneGap / jQuery Mobile? - PullRequest
25 голосов
/ 07 октября 2011

Как создать событие календаря из приложения JavaScript / jQuery Mobile / PhoneGap в iOS / Android?

Есть ли, например, плагины PhoneGap?В официальном репозитории ничего не видел.

Ответы [ 5 ]

5 голосов
/ 03 июля 2014

Я понимаю, что это старый вопрос, но есть плагин для этого сейчас.У него есть свои минусы, но работает.На момент написания он поддерживает следующие функции:

  • iOS поддерживает: создание (без вывода сообщений), обновление (без вывода сообщений) и удаление (без вывода сообщений) событие
  • Android> = 4: создание(в интерактивном режиме и без вывода сообщений), обновление (не поддерживается), удаление (без вывода сообщений) событие
  • Android <4: создание (в интерактивном режиме), обновление (не поддерживается), удаление (не поддерживается) событие </li>

Ниже приведен пример кода:

  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);
5 голосов
/ 22 ноября 2011

Согласно комментариям ниже, теперь возможно создать файл iCal для iOS и файл vcs для Android .Это потребует перехвата браузера / устройства или предоставления пользователю выбора, но, по крайней мере, должно быть возможно.

2 голосов
/ 21 декабря 2011

В настоящее время план развития PhoneGap не включает поддержку календаря.Тем не менее, есть много запросов на это.См. Этот пост под названием " Плагин календаря, следующий за API-интерфейсом календаря W3C ", который указывает на проект PhoneGap-Calendar-Plugin , который включает некоторую начальную поддержку календаря для Android.

1 голос
/ 05 марта 2013

Я нашел плагины для Android и iOS, но они не имеют одинакового API-интерфейса JavaScript, поэтому вам нужно написать разные коды для обеих систем или добавить другой слой.Также они не обновлены и нуждаются в исправлениях для работы с Cordova 2.2.0.Что еще хуже, документация довольно коротка:

Android

Плагин Dcheng для Android может создавать, удалять и искать события календаря, но полностью устарел и не будет работатькак есть.В Android 4.0 есть Провайдер календарей , который облегчает работу, но все же я не нашел хорошего плагина. jbajor может только добавлять события и twistandshout только поиск событий.

iOS

Плагин iOS для Felixactv8 может создавать,удалять и искать события календаря.Обратите внимание, что в iOS нет идентификатора события, поэтому поиск ваших событий будет увлекательным. автор объясняет , как добавить две необходимые платформы в xcode:

в календаре iphone используются 2 платформы: EventKit.framework и EventKitUI.framework.

если вы нажмете на значок xcode, вы должны увидеть значок проекта и значок цели.щелкните по значку цели, затем нажмите фазы сборки.Щелкните раскрывающийся список «Связать двоичные файлы с библиотеками». Щелкните знак «плюс» в нижней части окна, затем найдите обе платформы. Добавьте обе эти платформы, перестройте проект и запустите его.

1 голос
/ 14 марта 2012

Добавить событие в календарь iOS очень просто с помощью новейшего API. Однако для этого вам нужно создать свой собственный плагин.

, поскольку это зависит от платформы, придет время, прежде чем появится официальный плагин PhoneGap.

...