在 android 中更改活动时使用 SQLite 的正确方法是什么?

What is the right way in using SQLite when changing activities in android?

我有两个活动。 Activity 1 - 连接到数据库并获取一些数据。 Activity 2 - 连接到数据库并推送新数据。

有一个按钮可以从 activity 1 打开 activity 2。

当我在 activity 1 中打开数据库连接时,我应该在打开 activity 2 之前关闭它然后在 activity 2 中重新打开连接吗?

或者,有没有办法在 activity 1 中打开数据库连接,然后将连接传递给其他活动?

我建议这三个解决方案

  • 您可以在每次 onStop() 调用时关闭数据库并在 onStart() 调用您的活动时打开,但这不是一个好的解决方案
  • 将您的数据库包装在一些 singleton 中,例如将其称为 DataSource 或 DataAccessObject。它看起来像一个全局变量-访问应用程序数据的一个点,我特别推荐这种方式
  • 可能您不需要在第二个 activity 中连接到数据库。 Start second activity by yourIntent.startActivityForResult(),那么你应该 return 按意图从第二个到第一个新数据,并将其添加到 onActivityResult() 方法
  • 中的数据库

P.S。抱歉我的英语不好