Как удалить свой собственный испорченный календарь программным способом?
Я работаю над приложением, которое, помимо прочего, позволяет пользователю создавать напоминания и сохранять их в своем календаре.
Текущий код сначала создает локальный календарь, а затем вставляет в него события по запросу, незаметно (без открытия приложения календаря).
Проблема заключается в том, что при создании календаря на некоторых устройствах добавляются следующие поля (на Samsung), а на других устройствах он не может добавлять их напрямую:
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());
Поскольку эти строки не могли быть выполнены на некоторых устройствах, написанный код пытался сначала создать календарь с ними, а при сбое - без.
Результат описанного выше: на большинстве устройств, отличных от Samsung, был создан поврежденный календарь без обязательных полей, таких как ACCOUNT_NAME.
Это означает, что родное приложение Google Calendar все время падает и не может быть открыто, даже если я удалю свое приложение (так как поврежденный календарь уже был создан).
Кроме того, похоже, что я не могу удалить этот поврежденный календарь, так как у меня нет этих необходимых полей...
Что я могу сделать, чтобы это исправить?
Прямо сейчас - все, что я хочу сделать, - это иметь возможность удалить этот поврежденный календарь программным способом с телефона пользователя, чтобы приложение календаря можно было использовать снова.
Спасибо!
0 ответов
Попробуйте использовать это приложение, чтобы удалить неисправный календарь
Откройте приложение и сделайте следующее:
Выберите Редактировать календари.
Выберите свой неисправный календарь в поле Тип: Местный.
Выберите вариант удаления календаря, и все готово
Надеюсь, это поможет с вашей проблемой.