У меня есть относительно простой код для совершения звонка. Однако при просмотре последних звонков впоследствии отображается только номер телефона. Там нет контактного имени. В некоторой степени это имеет смысл, потому что я передаю только номер телефона в Intent:
Intent phoneCallIntent = new Intent (Intent.ACTION_CALL);
phoneCallIntent.setData (Uri.parse ("tel:" + number));
getContext ().startActivity (phoneCallIntent);
Для вызовов, совершаемых с помощью номеронабирателя Android, устанавливается значение CallLog CACHED_LOOKUP_URI, которое предоставляет способ получения имени вызывающего абонента и т. Д. Глядя на документацию по Android CallLog.Calls, говорится:
Это значение обычно заполняется приложением номеронабирателя для кэширования.
цель, так что это не гарантировано, и не может быть текущим
если изменилась контактная информация, связанная с этим номером.
Ну, это нормально. Но до сих пор я не нашел никакой информации (кроме исходного кода для номеронабирателя Android), которая объясняет, как установить это и другие кэшированные значения. Я надеюсь, что есть способ сделать это через Намерение, иначе кажется, что это станет довольно сложным.