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

时间:2019-02-13 12:17:04

标签: android android-sqlite android-contentprovider

我将创建两个具有相同SQLite数据库的应用程序。我通过了this链接。但这是没有道理的。我必须从两个应用程序更新数据库。请提出一种或多种更好的方法。

2 个答案:

答案 0 :(得分:1)

您应该阅读有关Content Provider

  

内容提供商是Android的主要组成部分之一   应用程序,向应用程序提供内容。他们封装数据   并通过单个ContentResolver将其提供给应用程序   接口。仅当您需要共享时才需要内容提供商   多个应用程序之间的数据。例如,联系人数据是   由多个应用程序使用,并且必须存储在内容中   提供者。如果您不需要在多个数据库之间共享数据   应用程序,您可以直接通过SQLiteDatabase使用数据库。

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

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

答案 1 :(得分:1)

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

创建内容提供者时,可以定义数据库的哪一部分也可以共享。

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

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