Don't re-read SharedPreferences unnecessarily.

Previously reads were only cached once a write occurred because
loading didn't set the stat metadata, thus the
sp.hasFileChangedUnexpectedly() check always fired on reading.

Now the initial read populates the stat info, so getSharedPreference()
repeatedly bypasses reading from disk, even wtihout writes.

This was probably a regression from apply() being added in
Gingerbread.

Bug: 3211034
Change-Id: Ifa0bbb27c53a4099544950a4f822fab1fc23a47d
2 files changed