当应用程序被强制移动到SD卡时,SharedPreferences会去哪里?

时间:2011-05-23 17:53:59

标签: android sharedpreferences android-sdcard

我有一个Android应用程序,它有一个服务,这应该只在内部安装。然而,一些使用ROOT的用户正在SD卡上安装它并报告各种奇怪的错误。

当用户这样做时,SharedPreferences会去哪里?它们是否也存储在SD卡上(对我来说真的很糟糕,因为我经常写它们)还是它们总是在内部存储上?我看到的一些错误似乎表明了这种情况。

如果是这样,我如何检测到我的SharedPreference文件确实在SD卡上?

谢谢!

1 个答案:

答案 0 :(得分:4)

当应用程序移动到SD卡时,只有.apk被移动到/mnt/asec/package_name/pkg.apk。 shared_prefs,cache,databases等目录和文件保留在/ data / data / package_name下的/ data分区中。

我在运行Bugless Beast 0.6.2.1的Moto Droid 1上检查过这个。

仅供参考,服务将从已移至SD卡的应用程序运行良好。移动到SD卡的唯一问题是,当卸载SD卡时,您的应用程序(及其服务)将无法运行。