【问题标题】:When an incoming call is detected, start the android app当检测到来电时,启动安卓应用
【发布时间】:2019-11-18 16:57:48
【问题描述】:

我想检测来电。我用广播接收器做了这个,效果很好。但是当我的应用程序关闭时,它会显示“应用程序已停止”(应用程序崩溃)。那么如何启动我的应用程序来执行操作呢?

这是我的广播接收器:

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.telephony.TelephonyManager;
import android.util.Log;

public class InterceptCall extends BroadcastReceiver {

    private static final String TAG = "InterceptCall";

    private static MainActivity activity;

    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getStringExtra(TelephonyManager.EXTRA_STATE).equals(TelephonyManager.EXTRA_STATE_RINGING)) {
            Log.d(TAG, "onReceive: incoming call");

            activity.startCallScreen();
        }
    }

    public static void setActivity (MainActivity mainActivity) {
        activity = mainActivity;
    }
}

【问题讨论】:

    标签: java android android-studio broadcastreceiver


    【解决方案1】:

    所以伙计们......如果我自己找到了答案:D

    只需要使用 onReceife 的 Context 并做:

    context.startActivity(new Intent(context, MainActivity.class));

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-24
      • 1970-01-01
      • 2016-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多