将 8.1 应用程序更新存储到 uwp 应用程序
Store update of 8.1 app to uwp app
我在商店里有一个 Windows Phone 8.1 应用程序。现在我已经创建了一个 uwp 更新。我的问题是:
如果我将应用程序的更新加载到商店中并且用户进行了此更新。该应用程序是否只是被覆盖或卸载然后重新安装? ApplicationData.Current.LocalSettings中保存的设置是否被删除?
感谢新人
TL;DR; - 从 LocalFolder 和 LocalSettings 更新时,它会保留数据WP8.1 Runtime 到 UWP(在具有 Insider 预览 - 快速环 的设备上使用移动设备进行测试)。
我已经运行进行了类似的测试,like the last time:
- 我已经发布了应用程序的测试版 - WP8.1 Runtime。
- 在 Phone 上成功安装后,我在 LocalFolder 中创建了一个文件,并在 LocalSettings 中设置了值(见下面的代码),
- 我已提交更新 - 前往商店,选择应用程序,点击 更新,然后点击 软件包,过了一会儿,浏览你的文件并选择新生成的appxbundle(我没有删除旧的WP8.1包),保存并提交。
- 一段时间后,我的 Phone 收到应用程序更新通知 - 我单击 更新
- 安装成功后,我看到这是一个新的应用程序,我点击我的特殊按钮检查LocalFolder和LocalSettings中的值 -我看到有 个来自 WP8.1 版本的旧值。
用于测试的按钮代码:
private async void Generate_Click(object sender, RoutedEventArgs e)
{
StorageFile file = await ApplicationData.Current.LocalFolder.CreateFileAsync("test.txt");
await FileIO.WriteTextAsync(file, "Something inside");
}
private async void CheckFile_Click(object sender, RoutedEventArgs e)
{
try
{
StorageFile file = await ApplicationData.Current.LocalFolder.GetFileAsync("test.txt");
string text = await FileIO.ReadTextAsync(file);
await new MessageDialog($"File exists = {text}").ShowAsync();
}
catch (Exception) { await new MessageDialog("File desnt exists").ShowAsync(); }
}
private void GenerateSetting_Click(object sender, RoutedEventArgs e) => ApplicationData.Current.LocalSettings.Values["CHECK"] = "Test value";
private async void CheckSetting_Click(object sender, RoutedEventArgs e)
{
if (ApplicationData.Current.LocalSettings.Values.ContainsKey("CHECK"))
await new MessageDialog($"Setting exists = {ApplicationData.Current.LocalSettings.Values["CHECK"]}").ShowAsync();
else await new MessageDialog("Setting doesn't exist").ShowAsync();
}
我在商店里有一个 Windows Phone 8.1 应用程序。现在我已经创建了一个 uwp 更新。我的问题是: 如果我将应用程序的更新加载到商店中并且用户进行了此更新。该应用程序是否只是被覆盖或卸载然后重新安装? ApplicationData.Current.LocalSettings中保存的设置是否被删除?
感谢新人
TL;DR; - 从 LocalFolder 和 LocalSettings 更新时,它会保留数据WP8.1 Runtime 到 UWP(在具有 Insider 预览 - 快速环 的设备上使用移动设备进行测试)。
我已经运行进行了类似的测试,like the last time:
- 我已经发布了应用程序的测试版 - WP8.1 Runtime。
- 在 Phone 上成功安装后,我在 LocalFolder 中创建了一个文件,并在 LocalSettings 中设置了值(见下面的代码),
- 我已提交更新 - 前往商店,选择应用程序,点击 更新,然后点击 软件包,过了一会儿,浏览你的文件并选择新生成的appxbundle(我没有删除旧的WP8.1包),保存并提交。
- 一段时间后,我的 Phone 收到应用程序更新通知 - 我单击 更新
- 安装成功后,我看到这是一个新的应用程序,我点击我的特殊按钮检查LocalFolder和LocalSettings中的值 -我看到有 个来自 WP8.1 版本的旧值。
用于测试的按钮代码:
private async void Generate_Click(object sender, RoutedEventArgs e)
{
StorageFile file = await ApplicationData.Current.LocalFolder.CreateFileAsync("test.txt");
await FileIO.WriteTextAsync(file, "Something inside");
}
private async void CheckFile_Click(object sender, RoutedEventArgs e)
{
try
{
StorageFile file = await ApplicationData.Current.LocalFolder.GetFileAsync("test.txt");
string text = await FileIO.ReadTextAsync(file);
await new MessageDialog($"File exists = {text}").ShowAsync();
}
catch (Exception) { await new MessageDialog("File desnt exists").ShowAsync(); }
}
private void GenerateSetting_Click(object sender, RoutedEventArgs e) => ApplicationData.Current.LocalSettings.Values["CHECK"] = "Test value";
private async void CheckSetting_Click(object sender, RoutedEventArgs e)
{
if (ApplicationData.Current.LocalSettings.Values.ContainsKey("CHECK"))
await new MessageDialog($"Setting exists = {ApplicationData.Current.LocalSettings.Values["CHECK"]}").ShowAsync();
else await new MessageDialog("Setting doesn't exist").ShowAsync();
}