【问题标题】:Can we use one database for two or more application我们可以将一个数据库用于两个或多个应用程序吗
【发布时间】:2019-02-13 12:17:04
【问题描述】:

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

【问题讨论】:

    标签: android android-sqlite android-contentprovider


    【解决方案1】:

    你应该阅读Content Provider

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

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

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

    【讨论】:

      【解决方案2】:

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

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

      内容提供者具有以下部分- 1.扩展ContentProvider类的类 2. 将这个 ContentProvider 与 Android 操作系统上的其他内容区分开来的权限。 3. 将 Uri 保存到要与其他应用程序共享的表和列的 Contract 类 4. ContentResolver 从 ContentProvider 访问数据 5. 一组用户定义的写入和读取共享 ContentProvider 的权限。权限仅允许您授权的那些应用访问您的 ContentProvider

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

      【讨论】:

        猜你喜欢
        • 2015-03-24
        • 2020-12-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-10-18
        • 2013-09-03
        相关资源
        最近更新 更多