Receiver for Android App信息活动

时间:2013-06-04 08:51:29

标签: android broadcastreceiver

有没有办法创建可在用户转到应用信息活动时触发的BroadcastReceiver(设置>应用管理>选择应用)?如果是这样,我们会知道哪个应用的信息显示出来了吗?

谢谢, hmlaken

2 个答案:

答案 0 :(得分:0)

不,没有广播Intent

(为什么你想要这个信息?)

如果您想知道用户何时移除您的应用:请收听PACKAGE_REMOVED intent

答案 1 :(得分:0)

当用户打开特定活动时,不会触发广播。

如果您想知道用户当前所处的活动,您可以尝试定期检查活动堆栈,以了解用户当前正在查看的活动。

while(true) {
    ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
    List<ActivityManager.RunningTaskInfo> runTaskInfo = am.getRunningTasks(1);
    String pkg = runTaskInfo.get(0).topActivity.getPackageName(); 
    String activity = runTaskInfo.get(0).topActivity.getClassName();
    String tmp = pkg + " : " + activity;
    Thread.sleep(1000);
}

在一个线程中运行它,它会每1秒唤醒一次,并为您提供当前屏幕上的活动。将其与您希望了解用户何时调用的活动进行比较。