【问题标题】:Start/launch myApp when another app started/launched当另一个应用程序启动/启动时启动/启动 myApp
【发布时间】:2019-11-22 07:17:23
【问题描述】:

我是安卓新手。我想知道..

我想开发一个应用程序,它在设备中的另一个应用程序(如 gmail 或 facebook 等)启动时启动。我不知道如何开发这个应用程序。我想支持 API 21 及更高版本

对于低于 8.0 的旧版本 android,我可以使用服务并在特定应用启动时启动我的应用(如 applocker),但不允许使用更高版本的 android 服务。

当我的应用未运行(被杀死)时,我如何在 android 8.0 及更高版本中启动服务或任何替代类/组件。 谢谢。

【问题讨论】:

标签: android android-intent app-launcher


【解决方案1】:

使用线程启动服务并在一定的睡眠时间(例如线程中的一秒)调用以下功能。这将在其他应用程序在前台运行时启动您的应用程序

List<ActivityManager.RunningAppProcessInfo> runningProcesses = ((ActivityManager) getSystemService(Context.ACTIVITY_SERVICE)).getRunningAppProcesses();
for (int currentProcess = 0; currentProcess < runningProcesses.size(); currentProcess++)
{
    if (runningProcesses.get(currentProcess).importance == ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND)
    {
        if(!runningProcesses.get(currentProcess).pkgList[0].equalsIgnoreCase("your_app"))
        {
            //start your activity
            break;
        }
    }
}

【讨论】:

  • 感谢您的部分回答,但是当我的应用程序未运行时,如何在 android 9.0 中启动服务?
猜你喜欢
  • 1970-01-01
  • 2012-05-12
  • 1970-01-01
  • 2016-08-05
  • 2014-05-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多