|
|

楼主 |
发表于 2026-1-8 16:47:48
|
显示全部楼层
mSharedPreferences 数据存储位置:/data/data/你的包名/shared_prefs/你的配置文件.xml 这里的“你的存储位置.xml”是在哪里定义的?
mSharedPreferences 对应的 XML 文件名是在 调用 getSharedPreferences() 方法时定义的。
文件名定义位置:
- // 定义文件名的地方
- mSharedPreferences = getSharedPreferences("app_prefs", Context.MODE_PRIVATE)
- ↑
- 这里定义文件名
复制代码
实际存储路径示例
假设你的应用包名是 myapplication,调用:
- mSharedPreferences = getSharedPreferences("app_prefs", Context.MODE_PRIVATE)
复制代码
那么存储位置就是:
- /data/data/myapplication/shared_prefs/app_prefs.xml
复制代码
不同的定义方式
1. 自定义文件名
- // 对应文件:/data/data/你的包名/shared_prefs/my_custom_prefs.xml
- mSharedPreferences = getSharedPreferences("my_custom_prefs", Context.MODE_PRIVATE)
复制代码
2. Activity 专用(默认文件名)
- // 对应文件:/data/data/你的包名/shared_prefs/MainActivity.xml
- mSharedPreferences = getPreferences(Context.MODE_PRIVATE)
- // 等价于 getSharedPreferences("MainActivity", MODE_PRIVATE)
复制代码
3. 默认 SharedPreferences
- // 对应文件:/data/data/你的包名/shared_prefs/cn.unicoder.myapplication_preferences.xml
- PreferenceManager.getDefaultSharedPreferences(this)
复制代码
查看实际文件内容
你可以在 Android Studio 的 Device File Explorer 中查看:
- // 如果这样定义:
- mSharedPreferences = getSharedPreferences("privacy_settings", Context.MODE_PRIVATE)
- // 存储位置:
- // /data/data/cn.unicoder.myapplication/shared_prefs/privacy_settings.xml
- // 文件内容示例:
- <?xml version='1.0' encoding='utf-8' standalone='yes' ?>
- <map>
- <boolean name="privacy_accepted" value="true" />
- </map>
复制代码
总结:XML 文件名就是你在 getSharedPreferences() 的第一个参数中指定的字符串,加上 .xml 后缀。 |
|