我们可以将一个数据库用于两个或更多应用程序

问题描述 投票:1回答:2

我即将创建两个具有相同SQLite数据库的应用程序。我经历了this链接。但它没有意义。我必须从两个应用程序更新数据库。请建议一种或多种更好的方法。

android android-sqlite android-contentprovider
2个回答
1
投票

你应该读一下Content Provider

内容提供商是Android应用程序的主要构建块之一,为应用程序提供内容。它们封装数据并通过单个ContentResolver接口将其提供给应用程序。只有在需要在多个应用程序之间共享数据时,才需要内容提供程序。例如,联系人数据由多个应用程序使用,并且必须存储在内容提供商中。如果您不需要在多个应用程序之间共享数据,则可以通过SQLiteDatabase直接使用数据库。

https://developer.android.com/guide/topics/providers/content-providers

https://developer.android.com/reference/android/content/ContentProvider


1
投票

Content Provider是与其他应用程序共享数据库的好方法。

创建内容提供程序时,您可以定义数据库的哪个部分也可以共享。

内容提供程序具有以下部分:1。扩展ContentProvider类的类2.用于将此ContentProvider与Android O.S上的其他内容区分开的权限。 3.一个Contract类,用于将Uri保存到要与其他应用程序共享的表和列4.用于从ContentProvider访问数据的ContentResolver 5.用于在共享ContentProvider中写入和读取的用户定义权限集。权限仅允许您授权的应用程序访问您的ContentProvider

这是一个关于ContentProvider的使用以及如何与其他应用程序共享数据库的简单教程 - https://www.tutorialspoint.com/android/android_content_providers.htm

© www.soinside.com 2019 - 2024. All rights reserved.