将具有自己的数据库的我的模块集成到另一个应用程序中



我有一个包含数据库的笔记应用程序,我需要将此笔记应用程序用作我的两个父应用程序中的库或模块,如何在我的两个应用程序中使用它?

AAR:

如果我使用 .aar 意味着是否可以在 aar 模块中创建或存储数据库。

子模块:

如果我去子模块,我需要在每个项目中创建表。

个人应用程式:

如果我去单个应用程序,我如何分享我的数据库详细信息。

我想,这是您使用内容提供商的最佳选择。

但是,内容提供商主要用于其他 使用提供程序客户端访问提供程序的应用程序 对象。提供商和提供商客户共同提供一致的, 数据的标准接口,也处理进程间 通信和安全数据访问。

通常,您在以下两种方案之一中与内容提供商合作;您 可能希望实现代码以访问 另一个应用程序,或者您可能想要创建新的内容提供程序 以与其他应用程序共享数据。

来源: https://developer.android.com/guide/topics/providers/content-provider-basics

在 Notes 应用程序中创建内容提供程序后,其他应用程序可以通过内容解析程序进行访问。这与您在Android上访问书签或联系人的方式完全相似。


还有一个建议:如果您只想在应用程序之间共享,请不要忘记注意安全性。

如果您使用内容提供商仅在您的 自己的应用程序,最好使用Android:protectionLevel 属性设置为签名保护。签名权限不 需要用户确认,以便提供更好的用户体验 以及当应用程序对内容提供商数据进行更受控的访问时 访问数据使用相同的密钥进行签名。

来源: https://developer.android.com/training/articles/security-tips#ContentProviders

最新更新