Mik*_*sen 19 c# windows-8 windows-phone-8
我正在编写Windows Phone 8应用程序,因此我可以捕获3%的抢占市场份额,并且很难在应用程序中持久保存用户设置.
我首先浏览了这个博客,其中介绍了Windows.Storage命名空间的基础知识,该命名空间旨在完成此类操作.好极了!
但是,我想作者从未真正运行过他自己的代码,否则他会知道你调用的第二个代码ApplicationData.Current.LocalSettings,你会得到一个NotImplementedException例外. 我们去的MSDN!
好吧,这很清楚,这个API没有在Windows Phone 8上实现.我得出这个结论时说:"这个API没有实现,如果被调用会抛出异常." - 那很好.
所以,也许还有其他类似的API.经过一番谷歌搜索,我发现了这个博客.它被称为"Windows 8应用程序 - 必须知道技巧!".这看起来很官方!它涵盖了各种非常酷的持久性API,包括永久和瞬态存储,漫游存储等.
但细想一下:RoamingFolder,RoamingSettings,TemporaryFolder,LocalSettings-这一切都不是在Windows Phone 8中实现.
实现这些有点关键的功能只是让他们放松了吗?我应该创建一个本地SQL数据库来存储基本的应用程序设置,还是有一些简单的我找不到?
Mik*_*sen 20
啊哈!想出这个.我挖出了Windows Phone 7 API文档,遗留API实际上仍然适用于Windows Phone 8.
public static void Session_PersistSession(string ticket)
{
if (IsolatedStorageSettings.ApplicationSettings.Contains("SessionTicket"))
{
IsolatedStorageSettings.ApplicationSettings["SessionTicket"] = ticket;
}
else
{
IsolatedStorageSettings.ApplicationSettings.Add("SessionTicket", ticket);
}
IsolatedStorageSettings.ApplicationSettings.Save();
}
public static string Session_LoadSession()
{
string ticket;
if (IsolatedStorageSettings.ApplicationSettings.TryGetValue<String>("SessionTicket", out ticket))
{
return ticket;
}
return null;
}
Run Code Online (Sandbox Code Playgroud)