Имеется контакт на устройстве, после его удаления и восстановления, ему присваивается новый RAW_CONTACT_ID. Каким образом можно присвоить ему старый?
Никак. Невозможно.
По сути RAW_CONTACT_ID представляет собой первичный ключ в SQLite таблице контактов (зарезервированное имя _ID), соответственно, первичные ключи генерируются СУБД SQLite, обычно в режиме autoincrement. Фактически это означает, что данный первичный ключ не дается на редакцию.
Можно конечно попытаться получить root на девайсе, тем самым получить права на запись в таблицу контактов, затем скопировать таблицу контактов в другую, при этом озаботиться тем, чтобы в новой таблице был другой первичный ключ, потом перебить RAW_CONTACT_ID в старое значение (предварительно озаботившись, тем чтобы не было дублей старого значения), потом обратно скопировать копию на старое место, наложить новый первичный ключ - в общем все сложно - и главное надо ли?
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости