Как создать новый контакт со старым RAW_CONTACT_ID?

160
22 ноября 2021, 10:50

Имеется контакт на устройстве, после его удаления и восстановления, ему присваивается новый RAW_CONTACT_ID. Каким образом можно присвоить ему старый?

Answer 1

Никак. Невозможно.

По сути RAW_CONTACT_ID представляет собой первичный ключ в SQLite таблице контактов (зарезервированное имя _ID), соответственно, первичные ключи генерируются СУБД SQLite, обычно в режиме autoincrement. Фактически это означает, что данный первичный ключ не дается на редакцию.

Можно конечно попытаться получить root на девайсе, тем самым получить права на запись в таблицу контактов, затем скопировать таблицу контактов в другую, при этом озаботиться тем, чтобы в новой таблице был другой первичный ключ, потом перебить RAW_CONTACT_ID в старое значение (предварительно озаботившись, тем чтобы не было дублей старого значения), потом обратно скопировать копию на старое место, наложить новый первичный ключ - в общем все сложно - и главное надо ли?

READ ALSO
Перевод кода с Kotlin на Java

Перевод кода с Kotlin на Java

Имею код на Kotlin (Android Studio 35):

162
Не вижу html файлов

Не вижу html файлов

Недавно упала задача, кое-что поменять на сайтеНо я не могу найти html файлов

179
Изменение значения поля в строке таблицы через JS

Изменение значения поля в строке таблицы через JS

Прошу помочь советом, как написать очень небольшой скрипт на JS, который бы изменял значение поля "Дата создания детали" на целевое время (не реальное,...

251
Как сделать такие цифры?

Как сделать такие цифры?

Ссылка на картинку

140