CalendarId, EventId в API календаря Google совпадают с API провайдера Android? - PullRequest
0 голосов
/ 03 июля 2018

Используя поставщика календаря Android, вы можете запрашивать экземпляры событий, которые содержат значение calendarId и значение eventId. Являются ли эти значения такими же, как те, которые вы получили бы, если бы запрашивали напрямую, используя Google Calendar API?

Например, каждый раз, когда вы очищаете данные календаря и затем синхронизируете, значения календаря и события будут такими же, как в предыдущий раз, что является постоянным? Или они будут восстановлены локально провайдером с некоторым сопоставлением, возвращающимся к соответствующим событиям в реальном календаре Google?

Другими словами, для данного пользователя действительно ли пара [calendarId, eventId] является постоянным UID?

1 Ответ

0 голосов
/ 05 июля 2018

Нет, они не одинаковы. Идентификаторы календаря и событий Android - это идентификаторы строк в базовых таблицах SQLite, которые автоматически увеличиваются при каждом добавлении нового календаря или события.

Проверьте, как создаются столбцы событий и календаря _ID в CalendarDatabaseHelper.java, строка 523 и CalendarDatabaseHelper.java, строка 767 . Обратите внимание, что для календарей в явном виде не указывается AUTOINCREMENT, но если при вставке календаря не указано _ID, это определяется автоматически (см. Автоинкремент SQLite ).

Любые сходства с идентификаторами API Google являются простым совпадением.

Edit:

Адрес вашего комментария о наличии UID для идентификации тех же элементов:

Для событий есть общий идентификатор, см. iCalUID и UID_2445 . По сути, это одни и те же поля, и я ожидаю, что они будут иметь одинаковое значение для одинаковых событий.

Обратите внимание, что хотя в Android это поле называется UID_2445, оно совпадает с полем в RFC 5545, поскольку RFC 5545 является преемником RFC 2445, а поле UID имеет одинаковое значение в обеих спецификациях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...