2015-10-26 27 views
2

我編寫了一個應用程序,可以在接到電話時掛斷電話。爲了,我使用電話管理器,並需要此權限: android.permission.MODIFY_PHONE_STATE阻止來電與系統服務

但是,此權限使我的應用程序成爲系統應用程序,因此我將無法將其置於以後再玩商店。 但我在Play商店中看到了成功阻止傳入呼叫的​​應用(例如「呼叫黑名單」)。 我想知道,有沒有人知道這些應用程序使用什麼API來阻止來電,並允許這些應用程序在Play商店?

謝謝。

+0

我認爲它的API 8,不知道 –

+0

我沒有問API級別。我正在尋找Android API /我可以使用的類。 – user2630165

回答

0

您需要使用Broadcastreceiver類。 ,並且還需要在清單中添加此行以獲得執行權。

<uses-permission android:name="android.permission.READ_PHONE_STATE"> 

跟着這個。 http://www.tutorialforandroid.com/2009/01/get-phone-state-when-someone-is-calling_22.html

確保TelephonyManager.CALL_STATE_RINGING只是來電。 無論是響鈴還是應答,您都無法檢測呼出呼叫狀態。 傳出有隻有兩種狀態:

TelephonyManager.CALL_STATE_IDLE 
& 
TelephonyManager.CALL_STATE_OFFHOOK 
+0

阻斷呼叫怎麼辦?我的問題是掛斷電話,我希望我的應用程序不是系統應用程序。 – user2630165

+0

創建在後臺並在您的CALL_STATE_RINGING中編寫此代碼的服務。 ref:http://stackoverflow.com/questions/18065144/end-call-in-android-programmatically – dawncode