我正在开发一组新颖的应用程序,它们共享它们的基本行为(从数据库中挑选随机单词并将它们组合起来)。因为它们的工作原理基本相同,所以我尝试将代码的基础视为某种模板,但结果好坏参半。
当我正在进行更新时,我想让项目对 MVC 更加友好,并开始研究使用 ContentProvider 而不是直接的 SQLiteOpenHelper。我倾向于这种方式,因为谷歌的文档非常坚持使用它们。我的问题是在命名冲突领域。
TL; DR 跳过这里的问题。
如果两个第 3 方 Android 应用程序(由同一开发人员制作)都想使用相同的 ContentProvider,但不依赖于正在安装的另一个应用程序,它们是否都可以包含 ContentProvider 的副本(具有相同的权限和所有内容)并被允许同时安装(使用可用的最高版本的 ContentProvider)?
我不确定这是否可以通过内容提供者的设置方式实现,这似乎是单一的。我无法想象 Google 没有将此视为潜在问题或所需功能。是的,可能会出现一些复杂性,但我们已经克服了 dll 地狱和其他类似名称的问题……正确地做并不是那么困难。