我有一个应用程序,每隔一段时间就更新一次数据库,但只要我关闭应用程序或切换活动就会停止更新。我假设使用服务类可以帮助解决这个问题,但我不知道服务如何刷新我的活动或只是更新数据库。我的问题是如何使用服务来更新我的数据库?如果它有助于我的数据库将三个字符串拉入用户输入的数据库中。
答案 0 :(得分:0)
是的,使这个持续运行的最佳解决方案是将任务放在服务中。
现在,对于您的视图更新,您使用的API级别是什么?如果您使用的是3.x +,那么查看Loaders将会对您有所帮助,因为这些将在数据库更改时立即更新您的视图。
对于所有其他API级别,一种解决方案是使活动注册为您的服务的侦听器。只要服务完成数据库更新,就会向该服务的所有已注册侦听器发送消息。但是,当您执行此操作时,您必须确保在onResume中将活动注册为侦听器,并在onPause中取消注册以避免任何空指针情况。