#java #android #contacts #android-contacts
Вопрос:
Что я должен использовать вместо ContactsContract.Contacts.LAST_TIME_CONTACTED
этого ? Согласно документации, переменная LAST_TIME_CONTACTED была признана устаревшей. Даже это было написано на ContactsContract.class
/** @deprecated */
@Deprecated
String LAST_TIME_CONTACTED = "last_time_contacted";
Поскольку он был устаревшим, то должна быть другая альтернатива. Но почему нет альтернативы? Или почему в документации не было никакой альтернативы?
Эта константа устарела на уровне API 29.
Информация о привязке контактов больше не поддерживается с момента создания версии Android.VERSION_CODES.Q. Этот столбец всегда содержит 0.
В Android Q или более поздней версии также нет альтернативной переменной?
Комментарии:
1. Никаких обновлений от Android по этому поводу не поступало.
Ответ №1:
Альтернативы нет — и это преднамеренно.
Google больше не хочет, чтобы разработчики с разрешением «Контакты» могли получать доступ к данным, связанным с общением между пользователем и его контактами.
Если ваше приложение имеет право на получение разрешений ЖУРНАЛА вызовов или SMS, вы можете определить отметку времени последнего контакта на основе журнала вызовов / истории сообщений. Но эти разрешения не разрешены в Google Play, если только ваше приложение не относится к очень конкретному варианту использования, описанному здесь.