,我想我的應用程序來檢測,如果新的呼出發生檢測新的呼出的Android
我想要做這樣的事情:
if (there was a new outgoing call) {
do...
} else {
do...
}
,我想我的應用程序來檢測,如果新的呼出發生檢測新的呼出的Android
我想要做這樣的事情:
if (there was a new outgoing call) {
do...
} else {
do...
}
您可以使用android Broadcast Reciever。要使用它,所有你需要做的是首先,
創建一個新的處理類來處理廣播接收器。
public class OutgoingCallReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
//You can do this to get the phone number, it is only optional
String phoneNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
//Handle outgoing call event here
}
}
然後將它註冊到android清單中,以便它知道這個方法在哪裏。
<receiver android:name=".OutgoingCallReceiver" >
<intent-filter>
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
</intent-filter>
最後,創建於Android清單權限。
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
而且應該這樣做,希望我能幫上忙。 :)
創建廣播接收器捕捉呼出:
public class CallReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
// your code
}
}
然後在清單中註冊:
<receiver android:name=".CallReceiver" >
<intent-filter>
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
</intent-filter>
</receiver>
最後設置的權限:
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
檢測打出電話事件
1)創建OutgoingCallBroadcastReceiver
public class OutgoingCallReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Log.d(OutgoingCallReceiver.class.getSimpleName(), intent.toString());
Toast.makeText(context, "Outgoing call catched!", Toast.LENGTH_LONG).show();
//TODO: Handle outgoing call event here
}
}
註冊OutgoingCallBroadcastReceiver在AndroidManifest.xml
添加權限在AndroidManifest.xml
編寫你自己的代碼,只有當它不起作用時纔來到這裏。 – Kon
我想你不明白這個網站的目的,幫助計算機科學的人!您的評論是愚蠢的 –
http://stackoverflow.com/help/how-to-ask閱讀如何提出一個好問題。 – Kon