有没有办法创建可在用户转到应用信息活动时触发的BroadcastReceiver(设置>应用管理>选择应用)?如果是这样,我们会知道哪个应用的信息显示出来了吗?
谢谢, hmlaken
答案 0 :(得分:0)
答案 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秒唤醒一次,并为您提供当前屏幕上的活动。将其与您希望了解用户何时调用的活动进行比较。