我应该将消息存储在我的数据库中还是每次都查询系统短信数据库?

Should I store messages in my database or query the system SMS database everytime?

我正在开发一个短信应用程序。每次用户打开应用程序时,我都会收到来自 Android Database 的消息。

在大约有 100 条消息的设备上,它工作正常。但是对于具有 10,000 条消息的设备,应用程序在获取所有信息后大约需要 20 秒才能显示列表。

为了解决这个问题,我正在考虑三种可能的选择:

  1. 我是否应该考虑将所有数据保存到我自己的 database?它会让它更快吗?
  2. 我应该先收到一些消息,然后在后台接收其余消息吗?
  3. 您可能建议的任何其他选项。

提前致谢。

以下是您问题的答案

1.我是否应该考虑将所有数据保存到我自己的数据库中?会不会 让它更快?

不,不要那样做。这不会使它更快。你会得到同样的回应。

2。我应该先收到一些消息,然后再收到其余的消息吗? 背景?

您可以这样做,但是没有必要这样做来获取 background.Because 中的所有消息因此,让这些人处于后台是没有用的(直到或除非有业务需求)

您可能建议的任何其他选项。

是的,您需要实现分页,并且需要跟踪第一次需要加载多少条消息,然后在用户滚动时获取更多消息。在这种情况下,您需要自己跟踪已经加载了多少消息以及还想加载多少消息。要实现这一点,您将需要实施 android 的 PULL TO REFERESH 机制。并且可以在网上找到很多教程。

希望这能回答您的问题。