在Android中检测特定号码的来电

时间:2017-09-03 19:05:41

标签: android

我正在尝试创建一个应用程序,当特定号码给我打电话时通知我。 简而言之 。用户必须保存一个特定的号码,当这个号码呼叫时,应用程序会显示Toast或任何东西。

我应该在广播接收器中使用什么

1 个答案:

答案 0 :(得分:1)

尝试以下代码,使用BroadcastReceiver

接听来电
public class PhoneStateReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {

        try {
            String state = intent.getStringExtra(TelephonyManager.EXTRA_STATE);
            String incomingNumber = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);

            if(state.equals(TelephonyManager.EXTRA_STATE_RINGING)){
                      //Here you will incomeing mobile number do your logic here
                Toast.makeText(context,"Ringing State Number is - " + incomingNumber, Toast.LENGTH_SHORT).show();
            }
        }
        catch (Exception e){
            e.printStackTrace();
        }

    }

获取更多参考here