我的应用程序有两个版本,免费版和专业版,应用程序数据的内容提供程序需要在两者之间共享。
设计时应牢记以下几点
- 任何版本创建的数据都应该立即在另一个版本中可见
- 据我了解,专业版和免费版都不能在清单文件中声明相同的内容提供者
- 记住最后一点,我需要为免费版和专业版创建单独的提供程序
可能的解决方案:
- 创建两个内容提供者,一个由免费版创建,另一个由专业版创建
- 首次启动专业版时,如果免费版中有数据,请将其复制到专业版
- 每当在免费版或专业版中写入任何数据时,我都应该检查是否存在其他版本的 Content Provider,如果存在则写入两个 Content Provider
- 将 android:protectionLevel 属性设置为“signature”,这样两个版本都可以访问两个 Content Providers
请让我知道这是否有意义并遵循有关共享内容提供者的最佳实践。请分享任何其他方法。