无论如何可以写入呼叫日志数据库吗?我的意思是我想将所选数字添加到通话记录中。我尝试在网上搜索教程但找不到任何...虽然有一件事是肯定的,但它可以完成。因为我已经看到很多在线应用程序,它们可以恢复通话记录,所以我想我们可以以某种方式修改通话记录数据库(但我怎么也不清楚)。
我已经阅读了this post,但它恰好很久才被发布。
任何帮助将不胜感激!感谢名单!
答案 0 :(得分:17)
您可以使用此代码段将新记录添加到现有的呼叫日志内容提供商:
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 Voice Callback for Android)
请记住在Manifest中添加权限
<uses-permission
android:name="android.permission.READ_CONTACTS"/>
<uses-permission
android:name="android.permission.WRITE_CONTACTS"/>
答案 1 :(得分:1)
链接的帖子解释得很好,所以我不知道你为什么要再问。除非您保留自己的数据库或自己的固件,否则无法修改通话记录。