ActivityManager topActivity无法使用lollipop

时间:2015-05-28 14:10:11

标签: android android-activity activity-manager

我有一个应用程序在应用程序之间的一段时间不活动之后使用topActivity调用超时,这在android 4.x上工作正常但是因为更新到5.x这已停止工作。

完整的电话是

ActivityManager am = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
String packageName = am.getRunningTasks(1).get(0).topActivity.getPackageName();

有没有人经历过这个或有解决方案?没有错误它只是没有返回预期的。

注意:这不适用于商业应用,这适用于非常有限的管理分发。

1 个答案:

答案 0 :(得分:0)

引用the documentation for getRunningTasks()

  

此方法在API级别21中已弃用。

     

从LOLLIPOP开始,此方法不再适用于第三方应用程序:引入以文档为中心的最新版本意味着它可以将人员信息泄露给调用者。为了向后兼容,它仍将返回其数据的一小部分:至少是调用者自己的任务,以及可能已知不敏感的其他一些任务,如home。