我正在创建以这种方式读取调用日志的应用程序:
Uri uriCallsURI = Uri.parse("content://call_log/calls");
Cursor cur = mainActivity.getContentResolver().query(uriCallsURI, null, null, null, "_id");
Android 2.3.6 一切正常,但 Android 4.0.4 还显示短信作为通话记录。 如何防止这种情况发生?
最佳答案
不要对字符串进行硬编码。尝试编写这样的代码:
Cursor cur = null;
try {
cur = getContentResolver().query(CallLog.Calls.CONTENT_URI,
new String[] { BaseColumns._ID, CallLog.Calls.NUMBER },
null, null, "_id");
if (cur != null && cur.moveToFirst()) {
do {
Log.i("call", "id = " + cur.getString(0));
Log.i("call", "number = " + cur.getString(1));
Log.i("call", "..................................");
} while (cur.moveToNext());
}
} finally {
if (cur != null) {
cur.close();
}
}
关于java - Android 版本 - 4.0.4 中的通话记录与短信日志位于同一位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19241744/