大家好,我在阅读CallLog时遇到问题,数字的值为0,当我读取缓存的名称时为2 这是我的代码,我放了许可
String[] fields = {
android.provider.CallLog.Calls.NUMBER,
android.provider.CallLog.Calls.TYPE,
android.provider.CallLog.Calls.CACHED_NAME,
android.provider.CallLog.Calls.CACHED_NUMBER_TYPE
};
String order = android.provider.CallLog.Calls.DATE + " DESC";
Cursor c = getContentResolver().query(
android.provider.CallLog.Calls.CONTENT_URI,
fields,
null,
null,
order
);
if(c.moveToFirst()){
do{
//the problem was here //System.out.println(c.getColumnIndex(android.provider.CallLog.Calls.NUMBER)+" - - ");
//the solution is :$
System.out.println(c.getString(c.getColumnIndex(android.provider.CallLog.Calls.NUMBER))+" - - ");
} while (c.moveToNext());
}
我已经阅读了有关stackoverflow的所有相关问题 我想通了,所以如果有人面对它我会保留这个问题我是转储:S
答案 0 :(得分:1)
取决于电话,也不是所有/任何列都需要填写。最多到运营商/制造商/其他任何人想要写入表。但是,问题解决方法是否会这样做