在设备上启动任何Android应用程序时,是否有方法可以收听或收到通知?并在设备上启动应用程序做些事情?在应用程序启动前执行某些操作(提示)android
编辑:东西 - 我的意思是 - 显示一个警告对话框或类似的东西?
在设备上启动任何Android应用程序时,是否有方法可以收听或收到通知?并在设备上启动应用程序做些事情?在应用程序启动前执行某些操作(提示)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喜欢杀死很多服务)。
这是说,这是不可能的 https://stackoverflow.com/a/8293788/472336
但我认为你可以看看启动一类应用,这些应用程序可以在这里做的是教程
http://arnab.ch/blog/2013/08/how-to-write-custom-launcher-app-in-android/
感谢队友..这是我害怕的。我知道如何自定义启动设备上的任何应用程序,并知道如何让应用程序在后台运行。我在想什么是一种直接的方式来获得通知,如果一个应用程序启动,然后在那里显示警报排序? –
感谢您的帮助velis,我是否能够执行我自己的自定义操作?例如,即使我在后台保持服务处于活动状态,并确定顶级活动发生变化,也是如此。 –
是的,如果需要,服务可以显示Toast或启动自定义活动/应用程序。 – velis
谢谢我接受你的答案,因为没有其他适当的事件,这是一个快速解决这个问题。感谢所有的帮助。谢谢! –