5 回答
TA贡献1155条经验 获得超0个赞
共享首选项:将私有原始数据存储在键值对中。
内部文件存储:将应用程序私有文件存储在设备文件系统上。
外部文件存储:将文件存储在共享的外部文件系统上。这通常用于共享用户文件,例如照片。
数据库:将结构化数据存储在私有数据库中。
TA贡献1836条经验 获得超3个赞
如果您以这种方式创建它:
SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit();
它在内部存储中,实际上,这是它保存的路径:
/data/data/PACKAGE_NAME/shared_prefs/MY_PREFS_NAME.xml
TA贡献1816条经验 获得超6个赞
好吧,共享首选项也终于保存在内部文件存储中了。
Share preferences 就像键值对一样,它会将数据保存在内存中,最后由系统保存到内部文件存储中。
TA贡献1826条经验 获得超6个赞
共享首选项不能被任何人或任何东西(机器人等)访问,因为它是内部应用程序存储。这也是您可以在其中存储某些类型的原因。但是,这并不意味着您的手机中不存在该文件。正如@Ali 指出的那样,它存在于此处:
/data/data/PACKAGE_NAME/shared_prefs/MY_PREFS_NAME.xml
如果您的 SharedPreferences 名为MY_PREFS_NAME。您还会注意到它们的存储类型不同,MODE_PRIVATE、MODE_APPEND 等。有关更多信息,请参阅此链接(它详细介绍了所有模式):https://developer.android.com/reference/android/content/Context
还有共享首选项:https://developer.android.com/reference/android/content/SharedPreferences
获得它的方法是:
SharedPreferences storage = getSharedPreferences(MY_PREFS_NAME, Context.MODE_PRIVATE);
storage.putString(ID, VALUE);
storage.apply(); //Same the Value
这是如果您想从共享首选项(内部存储)中获取值。如果你想存储任何东西,你可以这样做(@Ali 已经写过这个):
SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit();
editor.getString(ID, VALUE_TO_RETURN_IF_KEY_NOT_FOUND);
添加回答
举报