WP7/WP8/WP8.1设置存储的区别

最近做的一个软件,由于最初是针对WP7的,现在在只能创建WP8.1的visual studio 2013上转换为了WP8的。

由于要保存字体大小、背景颜色、JSON三个数据,一直使用的是WP7下的存储方式:

IsolatedStorageSettings FontSizeSaved = IsolatedStorageSettings.ApplicationSettings;  //定义

FontSizeSaved["FontSizeSaved"] = sliderText.Value;  //存入一个double

txtContents.FontSize = (double)FontSizeSaved["FontSizeSaved"];  //读取

就是上面这只种能够在程序退出后也能保存的方式。一直可以用,可是昨天不是到出了什么问题,无法保存设置了。

在网上查了一下,WP8下保存设置还必须添加FontSizeSaved.Save()方法,

来保存写入到当前 System.IO.IsolatedStorage.IsolatedStorageSettings 对象的数据。

而在WP8.1下,就像上篇文章写的,应使用如下:

ApplicationDataContainer _appSettings = ApplicationData.Current.LocalSettings;

_appSettings.Values["UserDataKey"] = json;

string json = _appSettings.Values[“UserDataKey”].ToString();

之后,推荐一款能够查看隔离存储空间的软件IsoStoreSpy(支持WP8/8.1,WP7就不知道了,反正原来是可以的)

下图显示的是两个平台的隔离存储空间

WP8                              WP8.1
           

补充一点:(IsolatedStorageSettings)App.BackgroundAudioPlayerSaved.Value = backgroundAudioPlayer;

想要将后台音乐储存起来,重进应用时再播放,没想到导致的其他所有储存的值都无法读出,纠结了我很久很久。

其实后台的就是一直在播放的。重进应用后直接呈现backgroundAudioPlayer的属性到页面就行了。

 再者,这样的数据最后进行文件存储。

原文地址:https://www.cnblogs.com/yffswyf/p/4045148.html