如何以编程方式添加电话记录中的Android? [英] How to add phone logs programmatically in Android?
本文介绍了如何以编程方式添加电话记录中的Android?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想从我的自定义应用程序编程添加电话记录。 使用下面的code添加电话记录,我的手机日志列表得到一个新的电话记录, 但它只会增加列表中的电话号码,而不是呼叫类型,持续时间,和日期。
我错过了什么?
ContentValues值= NULL;
的for(int i = 0; I<长度;我++){
信息信息=(信息)Variables.elementAt(我);
INT指数= info.getIndex();
字符串值= info.getValue();
值=新ContentValues();
如果(值!= NULL){
如果(指数== Constants.NUMBER_TYPE){
values.put(CallLog.Calls.CACHED_NUMBER_TYPE,价值);
}否则,如果(指数== Constants.CALL_TYPE){
values.put(CallLog.Calls.TYPE,价值);
}否则,如果(指数== Constants.DATE){
values.put(CallLog.Calls.DATE,价值);
}否则,如果(指数== Constants.DURATION){
values.put(CallLog.Calls.DURATION,价值);
}
}
}
values.put(CallLog.Calls.NUMBER,phoneNumber的);
。activity.getContentResolver()插入(CallLog.Calls.CONTENT_URI,价值观);
解决方案
我在LG P350尝试这样做。
它确实工作原理与 android.permission.WRITE_CONTACTS
许可。
ContentValues值=新ContentValues();
values.put(CallLog.Calls.CACHED_NUMBER_TYPE,0);
values.put(CallLog.Calls.TYPE,CallLog.Calls.INCOMING_TYPE);
values.put(CallLog.Calls.DATE,System.currentTimeMillis的());
values.put(CallLog.Calls.DURATION,50);
values.put(CallLog.Calls.NUMBER,1234567890);
。getContentResolver()插入(CallLog.Calls.CONTENT_URI,价值观);
I want to add phone logs programmatically from my custom application. Using the following code for adding phone logs, I get a new phone log in phone log list, but it only adds the phone number in the list, not "call type", "duration", and "Date".
What did I miss?
ContentValues values = null;
for (int i = 0; i < length; i++) {
Info info = (Info) Variables.elementAt(i);
int index = info.getIndex();
String value = info.getValue();
values = new ContentValues();
if (value != null) {
if (index == Constants.NUMBER_TYPE) {
values.put(CallLog.Calls.CACHED_NUMBER_TYPE, value);
} else if (index == Constants.CALL_TYPE) {
values.put(CallLog.Calls.TYPE, value);
} else if (index == Constants.DATE) {
values.put(CallLog.Calls.DATE, value);
} else if (index == Constants.DURATION) {
values.put(CallLog.Calls.DURATION, value);
}
}
}
values.put(CallLog.Calls.NUMBER, phoneNumber);
activity.getContentResolver().insert(CallLog.Calls.CONTENT_URI, values);
解决方案
I tried this in my LG P350.
Its surely works with the android.permission.WRITE_CONTACTS
permission.
ContentValues values = new ContentValues();
values.put(CallLog.Calls.CACHED_NUMBER_TYPE, 0);
values.put(CallLog.Calls.TYPE, CallLog.Calls.INCOMING_TYPE);
values.put(CallLog.Calls.DATE, System.currentTimeMillis());
values.put(CallLog.Calls.DURATION, 50);
values.put(CallLog.Calls.NUMBER, "1234567890");
getContentResolver().insert(CallLog.Calls.CONTENT_URI, values);
这篇关于如何以编程方式添加电话记录中的Android?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文