如何处理Android标签活动中的数据库



所以我有一个在 TabActivity 中运行的 Android 应用程序,它通过这个标签将 3 个不同的活动分开。我已经用SQLite设置了一个DatabaseHandler类,一切都很好。

问题是,到目前为止,我真的不知道如何处理数据库,因为它将从其中一个活动中接收数据,我需要在不同的活动中显示该数据。我不知道我是否应该在主 TabActivity 中声明数据库或在哪里,我以前从未在 Android 中使用过 SQL,目前我很迷茫。

我试图描绘它,以便更容易理解: 解释图(抱歉,我还没有足够的声誉将图片直接发布到帖子中)

提前谢谢。

尽管从长远来看,可以在每个活动中使用 DatabaseHandler,但我认为大多数重要的应用程序都会从使用ContentProvider中受益

ContentProvider提供了对数据的抽象。当您将其与CursorLoader结合使用时,它会变得非常强大,并且LoaderManager使用支持库回到Android 1.6。

这些概念需要一些研究,但将使跨多个片段或活动共享数据更简单,更不容易出错。

Mobile Tuts有几个很好的教程,值得在官方Android文档和示例之上阅读:

http://mobile.tutsplus.com/tutorials/android/android-sdk_content-providers/

http://mobile.tutsplus.com/tutorials/android/android-sdk_loading-data_cursorloader/

只要

在完成对数据库的读取/写入后立即关闭与数据库的连接,您应该没问题。

每个活动都应该能够拥有自己的数据库处理程序。

最新更新