所以我想得到未接电话的计数,就像通知栏上显示的telephonyaapplication一样
所以我想出了这个密码:

String[] projection = { CallLog.Calls.CACHED_NAME, CallLog.Calls.CACHED_NUMBER_LABEL, CallLog.Calls.TYPE };
String where = CallLog.Calls.TYPE+"="+CallLog.Calls.MISSED_TYPE;
Cursor c = this.getContentResolver().query(CallLog.Calls.CONTENT_URI,projection,where, null, null);
c.moveToFirst();
Log.d("CALL", ""+c.getCount()); //do some other operation

if(c.getCount() > 0)//...etc etc
    Toast.makeText(app.this,String.valueOf(c.getCount()), Toast.LENGTH_LONG).show();

这段代码提供了toatl未接来电的数量,但我只想要通知栏中显示的最新来电
有人知道怎么做吗?

最佳答案

calllog.calls还有is_read和new字段。
我认为应该将where string-is_read=0添加到where string-is_read=0中。
请注意,is-read来自api级别14,new来自api级别1,所以我将同时检查它们。
http://developer.android.com/reference/android/provider/CallLog.Calls.html#IS_READ

10-08 19:00