我有两个版本的同一个应用程序.
当人们从免费版本升级到付费版本时,我希望将免费数据库复制到专业版数据库位置.
如果它属于另一个应用程序,有没有办法可以访问数据库文件?
该文件甚至属于应用程序还是通常可以通过文件系统访问?
最后,如何在不对其进行硬编码的情况下获取数据库文件的路径?
如果它属于另一个应用程序,有没有办法可以访问数据库文件?
仅当两个应用程序共享用户标识并由相同的签名密钥签名时.
该文件甚至属于应用程序还是通常可以通过文件系统访问?
它可以通过filesystem(/data/data/your.package.goes.here/databases/whatever-you-called-the.db
)获得,但同样,只有当两个应用程序共享一个用户ID并且由相同的签名密钥签名时才可用.
最后,如何在不对其进行硬编码的情况下获取数据库文件的路径?
您必须对其进行硬编码,或者至少对编译时已知的变量组件(包名称和数据库名称)进行硬编码.