Android拦截一个拨出去的电话
package cn.itcast.mobilesafe.receiver;
import cn.itcast.mobilesafe.ui.LostProtectedActivity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.sax.StartElementListener;
public class CallPhoneReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String number = getResultData();
if("20122012".equals(number)){
Intent lostintent = new Intent(context,LostProtectedActivity.class);
lostintent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//指定要激活的activity在自己的任务栈里面运行
context.startActivity(lostintent);
// 终止掉这个电话
// 不能通过 abortBroadcast();
setResultData(null);
}
}
}
注意设置优先级 这样拨打20122012就直接跑应用去了
<receiver android:name=".receiver.CallPhoneReceiver">
<intent-filter android:priority="1000">
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
</intent-filter>
</receiver>

浙公网安备 33010602011771号