Android 如何以编程方式删除自己的自定义损坏日历?

Android 如何以编程方式删除自己的自定义损坏日历?,android,google-calendar-api,android-permissions,calendarcontract,Android,Google Calendar Api,Android Permissions,Calendarcontract,我正在开发一个应用程序,它允许用户创建提醒并将其保存在日历中 当前代码首先创建一个本地日历,然后根据请求悄悄地(不打开日历应用程序)将事件插入其中 问题在于,在创建日历的过程中,在某些设备上,添加以下字段会起作用(在三星上),而在其他设备上,无法直接添加这些字段: contentValues.put(CalendarContract.Calendars.ACCOUNT_NAME, ApplicationState.getCurrentUser().getFullName()); contentV

我正在开发一个应用程序,它允许用户创建提醒并将其保存在日历中

当前代码首先创建一个本地日历,然后根据请求悄悄地(不打开日历应用程序)将事件插入其中

问题在于,在创建日历的过程中,在某些设备上,添加以下字段会起作用(在三星上),而在其他设备上,无法直接添加这些字段:

contentValues.put(CalendarContract.Calendars.ACCOUNT_NAME, ApplicationState.getCurrentUser().getFullName());
contentValues.put(CalendarContract.Calendars.ACCOUNT_TYPE, "LOCAL");
contentValues.put(CalendarContract.Calendars.CALENDAR_ACCESS_LEVEL, CalendarContract.Calendars.CAL_ACCESS_OWNER);
contentValues.put(CalendarContract.Calendars.OWNER_ACCOUNT, ApplicationState.getCurrentUser().getEmail());
由于这些行无法在某些设备上执行,因此编写的代码首先尝试使用它们创建日历,但失败时没有

上述操作的结果是:在除三星以外的大多数设备上,都创建了损坏的日历,没有诸如ACCOUNT_NAME之类的必填字段

这意味着:本机谷歌日历应用程序一直崩溃,无法打开,即使我删除了我的应用程序(因为损坏的日历已经创建)

此外,我似乎无法删除这个损坏的日历,因为我没有这些必要的字段

我能做些什么来修复它

现在-我想做的就是能够以编程方式从用户手机中删除这个损坏的日历,这样日历应用程序就可以再次使用


谢谢

尝试使用此应用程序删除故障日历

打开应用程序并执行以下操作:

  • 选择“编辑日历”

  • 在“类型:本地”下选择您的日历

  • 选择“删除日历”选项,即可完成

  • 希望这有助于解决您的问题