由于Calendar-PhoneGap-Plugin无法编辑android的事件,因此我在离子项目中使用了Lampa的cordova插件来打开日历,
onOpenCalendarEvent(calendarEvent: CalendarEvent) {
if (this.platform.is('ios')) {
var sApp = (window as any).startApp.set('calshow://');
sApp.start(
function() {
/* success */
},
function(error) {
/* fail */
alert(error);
}
);
} else {
var sApp = (window as any).startApp.set(
{
action: 'ACTION_MAIN',
category: 'CATEGORY_APP_CALENDAR',
intentstart: 'startActivity'
},
{
/* extras */
}
);
sApp.start(
function() {
/* success */
},
function(error) {
/* fail */
alert(error);
}
);
}
}
对于android,有一个有关日历意图的教程
指向有关意向编辑的android文档
https://www.grokkingandroid.com/intents-of-androids-calendar-app/
那里说
long eventID = 208;
...
Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
Intent intent = new Intent(Intent.ACTION_VIEW)
.setData(uri);
startActivity(intent);
我实际上从Calendar-PhoneGap-Plugin获得的calendarEventId。谁能告诉我如何正确设置以上意图?
我希望能够通过特定事件甚至是正确的日期在android和ios上打开本机日历。