1

有没有办法创建一个可以在用户进入应用程序信息活动(设置>应用程序管理>选择一个应用程序)时触发的广播接收器?如果是这样,我们会知道显示的是哪个应用程序的信息吗?

谢谢,赫姆拉肯

4

2 回答 2

0

不,没有Intent广播。

(还有你为什么想要这些信息?)

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

于 2013-06-04T08:57:07.393 回答
0

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

如果想知道用户当前在哪个activity上,可以尝试定期检查activity stack来了解用户当前正在查看哪个activity。

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 秒唤醒一次,并为您提供当前在屏幕上的活动。将其与您正在寻找的活动进行比较,以了解用户何时调用它。

于 2013-06-04T09:30:03.357 回答