当前位置: 首页 > 知识库问答 >
问题:

当检测到进线量时,启动android应用程序

夹谷英杰
2023-03-14

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

这是我的收音机:

html lang-html prettyprint-override">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;
    }
}

共有1个答案

慎俊艾
2023-03-14

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

只需要使用onReceife的上下文并执行

context.startActivity(new Intent(context, MainActivity.class));
 类似资料:
  • 我正在试验的Android信标库,我能够使其工作与苹果兼容的信标监测和测距添加自定义解析器(请参阅这是正确的布局,以检测iBeacons与AltBeacon的Android信标库?) 现在我正在尝试使用此处显示的示例代码编写一个在后台启动的应用程序: http://altbeacon.github.io/android-beacon-library/samples.html 这是我的代码: 不幸的

  • 问题内容: 我的问题很简单,我该如何识别首次申请?我认为可以通过在RMS中保存一些值并在应用启动时读取它并决定要做什么来实现。 但是没有更简单的解决方案吗? 问题答案: 据我所知,没有比这更简单的方法了,但这还是很容易的。

  • 当我的应用程序启动时,将创建一个executor服务(在java.util.concurrent中使用Executors.NewFixedThreadPool(maxThreadNum))对象。当请求到来时,executor服务将创建线程来处理它们。 当应用程序启动时,它将在executorService池中创建200个线程。 只是想知道当应用程序启动时,这是一种正确的创建线程的方法吗?还是有更好

  • 我正在开发一个在后台计算算法的应用程序。从应用程序启动到结束。这是一个跟踪算法(现在进一步解释算法的工作原理)。 因此,需要在应用程序的所有屏幕上计算后台任务,而不管用户在应用程序上的操作、单击、wifi通信消息(已在应用程序上完成),当算法在后台运行时,需要完成所有操作。 它是异步任务吗?如果没有,还有什么?应用程序正在运行,算法正在特定屏幕上计算,我想让它成为一个后台进程,与当前应用程序屏幕无

  • 检测Android应用的启动与关闭 原文链接 : Determine when App is Opened or Closed 原文作者 : Bill Donahue 译文出自 : 开发技术前线 www.devtf.cn 译者 : xianjiajun 校对者: Mr.Simple 校对者: chaossss 状态 : 完成 问题 当开发安卓程序的时候,我们不免需要去检测应用什么时候在前台运行,用

  • 问题内容: 我尝试使用范围类型APPLICATION和带有@ Create,@ Beg的方法来注释类,但这似乎不起作用。 我想要的是在应用程序启动时立即启动无限循环。 问题答案: 如果希望在初始化后立即执行方法,则可以使用以下注释: