使用 Intent 将事件插入日历时出错 [英] Error Inserting Event into Calendar with Intent

查看:19
本文介绍了使用 Intent 将事件插入日历时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试从片段向 calendar 插入事件,但我不断收到错误消息,提示找不到处理 Intent 的活动.

I'm trying to insert events to the calendar from a fragment, but I keep getting an error that no activity is found to handle Intent.

这是错误 -

android.content.ActivityNotFoundException: 未找到处理 Intent { act=android.intent.action.INSERT cat=[android.intent.category.APP_CALENDAR] typ=vnd.android.cursor.item/event 的活动(有附加功能) }

android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.INSERT cat=[android.intent.category.APP_CALENDAR] typ=vnd.android.cursor.item/event (has extras) }

这是我的代码:

Intent intent = new Intent(Intent.ACTION_INSERT);
intent.addCategory(Intent.CATEGORY_APP_CALENDAR);
intent.setType("vnd.android.cursor.item/event");
intent.putExtra(Events.TITLE, "Phototherapy Treatment");
intent.putExtra(Events.EVENT_LOCATION, "");
intent.putExtra(Events.DESCRIPTION, "Phototherapy Treatment");

// Setting dates
Calendar calDate = Calendar.getInstance();
intent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME,calDate.getTimeInMillis());
intent.putExtra(CalendarContract.EXTRA_EVENT_END_TIME,
calDate.getTimeInMillis()+60*60*1000);

// Make it a full day event
intent.putExtra(CalendarContract.EXTRA_EVENT_ALL_DAY, false);

// Make it a recurring Event                    
intent.putExtra(Events.RRULE, "FREQ=WEEKLY;COUNT="+Integer.valueOf(No.getText().toString())+";"
+"WKST=SU;BYDAY="+days);

// Making it private and shown as busy
 intent.putExtra(Events.ACCESS_LEVEL, Events.ACCESS_PRIVATE);
 intent.putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY);

startActivity(intent);

<小时>

意图过滤器


Intent Filter

<intent-filter> 
<action android:name="android.intent.action.MAIN" /> 
<action android:name="android.intent.action.INSERT" /> 
<category android:name="android.intent.category.APP_CALENDAR" /> 
<data android:mimeType="vnd.android.cursor.item/event" /> 
</intent-filter>

推荐答案

我使用了 Intent intent = new Intent(Intent.ACTION_EDIT);它似乎解决了这个问题

I used Intent intent = new Intent(Intent.ACTION_EDIT); and it seemed to resolve the issue

这篇关于使用 Intent 将事件插入日历时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆