0
我試圖控制來自我的應用程序的呼叫。阻止/取消阻止呼叫。傳入/傳出之間的差異
多虧了這個帖子Blocking Incoming call - Call Control in Android - Question Stackoverflow和this。我能夠取消入局/出局呼叫
我註冊ITelephony類(com.android.internal.telephony.ITelephony)
定義在清單的接收器:
<receiver android:name=".PhoneCallReceiver" >
<intent-filter android:priority="100" >
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>
</receiver>
而在PhoneCallReceiver我重寫OnRecive方法,使用反射實例ITelephony。
@Override
public void onReceive(Context context, Intent intent) {
Log.v(TAG, "Receving....");
TelephonyManager telephony = (TelephonyManager) context
.getSystemService(Context.TELEPHONY_SERVICE);
try {
Class c = Class.forName(telephony.getClass().getName());
Method m = c.getDeclaredMethod("getITelephony");
m.setAccessible(true);
telephonyService = (ITelephony) m.invoke(telephony);
//telephonyService.silenceRinger();
if (!(InfoAct.ismodguiaon(context))){
telephonyService.endCall();
} else {
}
} catch (Exception e) {
e.printStackTrace();
}
}
這有效,但我想要區分傳入和傳出的呼叫,我不知道如何。任何人都可以幫忙
正是我一直在尋找。謝謝! – Zartch 2012-07-18 12:06:44