我在此站点上看到了相关的问题和答案,但尚未获得满意的解决方案。
我的问题是这样的:
我的服务使用我应用程序中的对象(数据列表)。
例:
public class HelloService extends Service{
List<POI> poiList = Globalata.getListOfPOI(); // -- line a
}
当活动/应用程序被杀死时,这会使服务崩溃。如果我删除(a行),则当我的应用被终止/销毁时,服务将继续运行。我正在使用启动的服务。我能做什么 ?有什么方法可以防止我的活动/应用程序被杀死时服务崩溃和停止?
最佳答案
您可以复制列表,也可以将其对象复制到服务的专用列表中。
因此,当活动被杀死时,服务将拥有其自己的副本。
顺便说一下,avoir尽可能多地使用静态访问,但这取决于您是应用程序。