活动管理器泄漏活动

问题描述:

当我们在android代码中首次初始化ActivityManager时。它缓存调用活动的上下文吗?活动管理器泄漏活动

ActivityManager am =(ActivityManager)this.getSystemService(Context.ACTIVITY_SERVICE);

+2

你能解释一下你的问题吗?你有问题日志和更详细的来源? – Johann67

+0

@ Johann67 ...我正在开发消息应用程序。在使用应用之前,你应该配置AccountSetup Details,这一切都发生在MainActivity内部,通过传递上下文来调用子Activity。在儿童活动内部,我们初始化ActivityManager并检查它是否处于锁定任务模式 – vishwjeet

+0

代码中的“this”引用活动上下文。如果你在杀死这个活动后使用AM,我想它会导致上下文泄漏。另外,为了启动另一项活动,您为什么需要传递上下文? – Neji

我在我的Samsung Note 5手机上遇到了同样的问题,发现问题可以通过使用应用程序上下文来解决,如下所示。

ActivityManager am = (ActivityManager)this.getApplicationContext().getSystemService(Context.ACTIVITY_SERVICE); 

看来原因是由活动方面造成被一些三星设备的静态参考不停,更多信息可以参考this thread