2010-09-06 38 views

回答

2

我发现了一种方法来做我昨天所问的,所以我在这里分享给任何感兴趣的人。诀窍在于,捕捉Broadcast_Receiver中的NEW_OUTGOING_CALL广播意图,而不是像我所想的那样涉及选择联系人的任何事件。

所以......按照步骤操作。

在AndroidManifest.xml文件的应用程序元素中添加一个接收器元素... android:name属性是将从BroadcastReceiver扩展的类(如下所述)。

<receiver android:name=".OutgoingCallDetection"> 

<action android:name="android.intent.action.NEW_OUTGOING_CALL" 
    android:priority="0" /> 

啊!而你需要一个特别的许可......

<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" /> 

在扩展广播接收器(OutgoingCallDetection在这个例子中)的类的onReceive方法。请注意,setResultData(null)是防止系统本身进行呼叫的原因。

public void onReceive(Context arg0, Intent arg1) { 

    setResultData(null); 

    // Start an activity and then show a dialog, or something... 

} 

这里是,并根据需要工作。

相关问题