我目前在市场上有一个免费的应用程序,我想提供它的付费版本。一旦安装了付费版本,我想从免费版本导入数据库和共享首选项,这样用户就可以在不丢失任何内容的情况下卸载它。
问题是:在我的免费版本中,我没有 android:sharedUserId 设置。如果我添加了一个,应用程序在系统上的ID就会改变,我就不能再访问数据了。两个应用程序将使用同一证书进行签名。如何导入数据而不破坏免费应用程序的权限?
android:sharedUserId
不幸的是,没有简单的答案。
你可以添加一个 Service 带有AIDL接口或 ContentProvider 在未来的免费应用程序版本中,使用它将数据导入付费应用程序。根据数据,这可能需要一些自制的“许可”机制,以确保仅允许付费应用程序使用发布的接口。
Service
ContentProvider