检测android另一个应用程序启动事件

时间:2013-06-27 13:56:02

标签: android

我正在开发一个应用程序,我需要能够拥有一个可以检测应用程序何时打开的服务,并根据该服务采取行动。

我到处寻找,并没有找到办法。我已阅读有关广播接收器,目标处理程序的文档,但我什么也没找到。

然而,我找到了一个可以这样做的应用程序 - App Protector。它允许密码保护某些应用程序。

有人可以指出我正确的方向吗?

我发现检测应用程序启动但它的工作在api 12下面。谢谢!

1 个答案:

答案 0 :(得分:0)

如果在构建中添加/包含Android Support Library,这个“检测应用程序启动”API是否可行?

修改

我发现了这件事:

ActivityManager activityManager = (ActivityManager) this.getSystemService( ACTIVITY_SERVICE );
List<RunningAppProcessInfo> procInfos = activityManager.getRunningAppProcesses();
for(int i = 0; i < procInfos.size(); i++){
    if(procInfos.get(i).processName.equals("com.android.browser")) {
        Toast.makeText(getApplicationContext(), "Browser is running", Toast.LENGTH_LONG).show();
    }
}

但您必须知道应用程序的包名称。为此,请查看here

APILEVEL 12之后的此方法不起作用。 欢呼声。