Android攔截外撥電話程序示例
攔截監(jiān)聽外撥的電話,并進行處理:
向外撥打電話時系統(tǒng)會發(fā)出一個有序廣播,雖然該廣播最終會被拔號器里的廣播接收者所接收并實現(xiàn)電話拔打,但我們可以在廣播傳遞給拔號廣播接收者之前先得到該廣播,然后清除傳遞給拔號廣播接收者的電話號碼,在拔號廣播接收者接收到該廣播時,由于電話號碼為null,因此取消電話拔打。
Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:110"));
startActivity(intent);
public class OutCallReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
setResultData(null); //清除電話,廣播被傳給系統(tǒng)的接收者后,因為電話為null,取消電話拔打
// 同樣如果你想修改外拔的電話號碼,可以這樣做
// String phone = getResultData();//得到外拔電話
// setResultData(“12593”+ phone);//在電話前面加上12593
}
}
接收外拔電話廣播Intent,在AndroidManifest.xml文件中的<application>節(jié)點里訂閱此Intent:
<receiver android:name=".OutgoingCallReceiver">
<intent-filter android:priority="1">
<action android:name="android.intent.action.NEW_OUTGOING_CALL"/>
</intent-filter>
</receiver>
并且要進行權(quán)限聲明:
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
相關(guān)文章
android RecyclerView添加footerview詳解
大家好,本篇文章主要講的是android RecyclerView添加footerview詳解,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下2022-01-01
android實現(xiàn)獲取正在運行的應(yīng)用程序
android如何獲取正在運行的應(yīng)用程序,因為在framework中想添加這個功能,所以寫了個appliction來實現(xiàn)一下獲取正在運行的應(yīng)用程序2013-01-01
Android開發(fā)中應(yīng)用程序分享功能實例
這篇文章主要介紹了Android開發(fā)中應(yīng)用程序分享功能,結(jié)合實例形式分析了基于Intent實現(xiàn)Android程序分享功能的技巧,需要的朋友可以參考下2016-02-02
Android自定義控件實現(xiàn)UC瀏覽器語音搜索效果
這篇文章主要為大家詳細(xì)介紹了Android自定義控件實現(xiàn)UC瀏覽器語音搜索效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04

