设备上启动任何Android应用程序时,有没有办法监听或收到通知?并在设备上启动应用程序时做些什么?

编辑:某些-我的意思是-显示警报对话框或类似内容?

最佳答案

没有启动应用的活动。
但是,您可以轮询当前的最高活动,并在检测到其已更改时执行操作:

ActivityManager sysActivitySvc = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
String topActivity = sysActivitySvc.getRunningTasks(1).get(0).topActivity.getPackageName();
if(!topActivity.equals(lastTopActivity))
{
  lastTopActivity = topActivity;
  //Do your stuff here
}


请注意,轮询可能会影响电池使用情况。每秒最多轮询一次或两次以上。
此外,您还需要确保服务保持活动状态(Android经常会终止服务)。

关于android - 在应用启动android之前做点什么(提示)或做点什么,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22007805/

10-09 16:02