我目前正在学习“开发 Android 应用程序”Udacity 课程。在“第 3 课:新活动和意图 > 使用 SharedPreferences”部分中,讲师让我在 Android 开发者网站上挖掘如何从SharedPreferences
. 但是,我发现官方文档和课程解决方案之间存在差异。
Udacity 课程的解决方案说,要获取 的SharedPreferences
实例PreferenceActivity
,您应该调用:
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getActivity());
(这里getActivity()
只是Context
这里,因为它在 a 中被调用Fragment
。)
虽然Android Developer Site 上的官方文档表明您应该调用:
SharedPreferences prefs = getActivity().getPreferences(Context.MODE_PRIVATE)
PreferenceManager.getDefaultSharedPreferences(Context context)
那么和 和有什么区别Activity.getPreferences(int mode)
呢?
请注意:此问题不涉及任何getSharedPreferences()
需要文件名的内容。getPreferences()
这是关于和之间的区别getDefaultSharedPreferences()
。
提前致谢。