来电时重启 android 应用

Restart android app on incoming call

我正在制作一个应用程序,我希望在有来电时立即启动服务。在 android 中有哪些不同的方法可以做到这一点? 我知道广播接收器是一种方式,但我找不到传入 phone 呼叫的任何广播意图。

使用操作 PHONE_STATE 检测来电..

将此添加到清单

 <receiver android:name="com.example.YourReceiver" >
            <intent-filter>
                <action android:name="android.intent.action.PHONE_STATE" />
            </intent-filter>
        </receiver>

还有你的接收器

public class YourReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {

    if (intent.getStringExtra(TelephonyManager.EXTRA_STATE).equals(TelephonyManager.EXTRA_STATE_RINGING)) {
        // This code will execute when the phone has an incoming call



    } else if (intent.getStringExtra(TelephonyManager.EXTRA_STATE).equals(
            TelephonyManager.EXTRA_STATE_IDLE)
            || intent.getStringExtra(TelephonyManager.EXTRA_STATE).equals(
                    TelephonyManager.EXTRA_STATE_OFFHOOK)) {
        // This code will execute when the call is disconnected


    }
}
}