文章目录
前言
最近接手了一个项目,由于项目比较老,没有一个好的架构,发现 context.getSharedPreferences
的代码满天飞。
比如 ;
随即产生一个疑问,如果我多次调用 context.getSharedPreferences
, 那么获取的 SharedPreferences 实例是一个,还是多个????????
直接说答案:
相同的 fileName , 不管调用多少次,SharedPreferences 都是同一个实例。
也就是说 SharedPreferences 一旦被创建,就会在一个 map 中保存起来,map 的 key 就是 SharedPreferences 的 fileName。
相关的实现类在 ContextImpl
中