android如何将两个字符串与旧保存的数据进行比较

qzwqbdag  于 2021-07-03  发布在  Java
关注(0)|答案(1)|浏览(468)

我正在创建一个应用程序,我必须在启动时下载一个字符串(确切地说是一个链表)(可能只在第一次运行时这样做),然后每隔一段时间用下载的新字符串检查这个字符串。如果有更改,则使用新发现的字符串更新原始字符串(并使用前台服务发出警报,但这是另一回事)。
目前,我创建了一个可执行服务,并在其中放置了代码来下载和管理字符串。它每15分钟执行一次,并且有效。
我的问题是,我不确定哪种方法是保存初始数据的最佳方法,并且只有在发现新数据时才知道如何更新它。我可以在main上创建一个方法,或者创建一个由main调用的不同类。另外,要在关闭手机或关闭应用程序时保存此数据,我必须将字符串保存在共享首选项中?
我想知道某人的意见。谢谢你的帮助

yeotifhr

yeotifhr1#

要通过重新启动保持,是的,数据必须以某种方式存储。 SharedPreferences 是一个很好的方法。我假设您有一个服务运行在 Alarm ,因此获取新值并检查缓存的值。如果不一样,就写下来。如果没有,你就完了。
如果您使用的是服务,还可以尝试将值存储在内存中,以便更快地进行比较。如果它恢复到 null ,您知道需要再次获取保存的值,否则在不从存储器读取的情况下执行相同的比较。
你也可以用 BroadcastReceiver 要比较结果,请将新获取的值附加为额外值并发送 Broadcast 一旦它被取回。

相关问题