Windows Phone 8 ApplicationSettings - 在通用应用程序中获取设置

时间:2014-08-04 07:15:08

标签: windows-phone-8 windows-phone-8.1 win-universal-app

我正在升级Windows Phone 8应用程序。我创建了通用应用程序(Windows.Phone 8.1)。

旧WP8.0应用程序中的设置以下列方式保存:

IsolatedStorageSettings.ApplicationSettings.Add("MY_SETTINGS", value);

问题: 当应用程序升级到WP8.1(通用应用程序)时,如何获得此设置。

我尝试以下方法:

var localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
var isContains1 = localSettings.Values.ContainsKey("MY_SETTINGS");
var roamingSettings = Windows.Storage.ApplicationData.Current.RoamingSettings;
var isContains2 = roamingSettings.Values.ContainsKey("MY_SETTINGS");

但没有" MY_SETTINGS"被发现。 (isContains1,isContains2 == false):\

非常感谢您的帮助

3 个答案:

答案 0 :(得分:1)

WP8.1中的

LocalSettings与WP8.0中的工作方式不同 - 其中设置保存在文件中(序列化后)。该文件是 __ ApplicationSettings - 看看它(通过IS资源管理器工具),你会看到它的结构 - 它的一部分是一个序列化的字典。我曾经做过some research一次,这表明在更新过程中保留了所有旧文件 - 这意味着设置仍然存在。

将WP8.0应用程序更新为WP8.1并想要读取旧设置后,可以从文件中检索值。

答案 1 :(得分:1)

This blog post有您的确切答案,包括反序列化迁移的设置文件所需的代码!

答案 2 :(得分:0)

您可以使用ApplicationData.LocalSettings它会在本地应用数据存储中获取应用程序设置容器。这是一个Dev center链接,其中描述了如何使用它。