Android добавление номера в журналы вызовов - PullRequest
10 голосов
/ 02 июля 2010

Можно ли в любом случае записать в базу данных журналов звонков ?? Я хочу добавить выбранные номера в историю звонков. Я попытался найти учебник в сети, но не смог найти ничего ... Хотя одно можно сказать наверняка, ЭТО МОЖЕТ БЫТЬ СДЕЛАНО. Потому что я видел много приложений онлайн, которые восстанавливают журналы вызовов, поэтому я думаю, что мы можем как-то изменить базу данных истории вызовов (но как именно мне это не понятно).

Я уже прочитал это сообщение , но оно уже давно опубликовано.

Любая помощь будет оценена! Thanx!

Ответы [ 2 ]

17 голосов
/ 20 марта 2011

Этот фрагмент можно использовать для добавления новых записей в существующего поставщика содержимого журналов вызовов:

public static void insertPlaceholderCall(ContentResolver contentResolver, String number){
    ContentValues values = new ContentValues();
    values.put(CallLog.Calls.NUMBER, number);
    values.put(CallLog.Calls.DATE, System.currentTimeMillis());
    values.put(CallLog.Calls.DURATION, 0);
    values.put(CallLog.Calls.TYPE, CallLog.Calls.OUTGOING_TYPE);
    values.put(CallLog.Calls.NEW, 1);
    values.put(CallLog.Calls.CACHED_NAME, "");
    values.put(CallLog.Calls.CACHED_NUMBER_TYPE, 0);
    values.put(CallLog.Calls.CACHED_NUMBER_LABEL, "");
    Log.d(TAG, "Inserting call log placeholder for " + number);
    contentResolver.insert(CallLog.Calls.CONTENT_URI, values);
}

(код взят из Обратный звонок Google для Android )

Не забудьте добавить разрешения в Манифест

<uses-permission
    android:name="android.permission.READ_CONTACTS"/>
<uses-permission
    android:name="android.permission.WRITE_CONTACTS"/>
1 голос
/ 02 июля 2010

Связанный пост объясняет это очень хорошо, поэтому я не знаю, почему вы спрашиваете снова. Вы не можете изменять журналы вызовов, если у вас нет собственной базы данных или собственной прошивки.

...