Suj*_*jit 6 android broadcastreceiver android-intent
有谁知道未接来电的意图是什么.实际上我想在我的应用程序中发送未接来电和接听电话的短信.
Joe*_*Joe 11
您需要使用ContentObserver
public class MissedCallsContentObserver extends ContentObserver
{
public MissedCallsContentObserver()
{
super(null);
}
@Override
public void onChange(boolean selfChange)
{
Cursor cursor = getContentResolver().query(
Calls.CONTENT_URI,
null,
Calls.TYPE + " = ? AND " + Calls.NEW + " = ?",
new String[] { Integer.toString(Calls.MISSED_TYPE), "1" },
Calls.DATE + " DESC ");
//this is the number of missed calls
//for your case you may need to track this number
//so that you can figure out when it changes
cursor.getCount();
cursor.close();
}
}
Run Code Online (Sandbox Code Playgroud)
从您的应用中,您只需要这样做:
MissedCallsContentObserver mcco = new MissedCallsContentObserver();
getApplicationContext().getContentResolver().registerContentObserver(Calls.CONTENT_URI, true, mcco);
Run Code Online (Sandbox Code Playgroud)
Com*_*are 10
AFAIK没有针对未接来电的特定广播.
你可以看的ACTION_PHONE_STATE_CHANGED节目,等到从手机转移EXTRA_STATE_RINGING到EXTRA_STATE_IDLE,然后尝试检查CallLog的内容供应商,看看呼叫被错过.我没有尝试过这种技术,但它可能有效.
| 归档时间: |
|
| 查看次数: |
10455 次 |
| 最近记录: |