我不完全确定以下方法是好还是坏。如果有经验的人可以加他/她的 2 美分,那就太好了 :)
我有一个包含很多活动的应用程序。在这种情况下,它们都必须能够使用 LocalBroadcastManager 从动态注册的接收器(在 onCreate/Resume/Pause 中)接收消息,并运行 AsnycTask 来完成一些工作并显示 ProgressDialog。所需的代码(Receiver 和 AsnycTask)对于所有活动都是完全相同的。
消息可以随时由其中一项服务发送。
为此,我创建了一个实现所有这些的 Activity(在 oncreate/pause/resume 等中注册和取消注册接收器并包含此 AsyncTask)
所有其他活动都应该扩展此活动,因此我不必担心将额外代码放入它们各自的所有 onCreate/onResume/onPause 方法中以调用任何帮助程序类/方法(并且忘记这样做)。
这种方法可以吗?我之所以问是因为我曾经偶然发现一个关于从自定义类扩展活动的类似问题(遗憾的是我再也找不到它了)并且一个答案表明它会导致大量内存泄漏而没有解释原因。
非常感谢你!