创建APP检查更新页
本文来源及参考:Create a check for updates page for your app。
这篇文章解释了如何创建一个简单的检查更新页,检查该用户已安装的应用程序的最新版本。
简介
这篇文章显示了如何创建用于您的应用程序的"检查更新"页。这会比较市场上当前可用的版本和应用程序的已安装的版本。如果有可用的更新版本,将会提示您,并跳转到应用市场上的应用程序。
![]()
安装系统必备组件
此示例的唯一前提是你需要先安装了优秀"Cimbalino Windows Phone 工具包"。这可以通过使用 nuget 或可以从这里下载.
设置的清单文件
有几件事情,你就需要在您的应用程序清单文件中设置。首先,您需要确保在清单中的产品 Id 相匹配的 (这可以在您的应用程序在Windows Phone Developer Dashboard portal上的详细信息选项卡找到) 发布的应用程序的应用程序 ID。你还需要确保您在每次更新应用程序更新中你清单的版本号。
检查有更新
检查您的应用程序的代码是相当直截了当。首先我们从使用 'ApplicationManifestService' 的清单文件获取当前已安装的应用程序的版本号。然后,我们使用 'MarketplaceInformationService' 在获取可用的版本市场上 (请注意,此项检查需要 internet 连接)。比较两个版本,然后提示用户是否是他们想要从市场上安装较新的版本。最后一步是使用"MarketplaceDetailTask"以向用户显示信息。
1: private async void CheckForUpdates()
2: {
3: var _informationService = new MarketplaceInformationService();
4: var _applicationManifestService = new ApplicationManifestService();
5:
6: var result = await _informationService.GetAppInformationAsync();
7: var appInfo = _applicationManifestService.GetApplicationManifest();
8: var currentVersion = new Version(appInfo.App.Version);
9: var updatedVersion = new Version(result.Entry.Version);
10:
11: if (updatedVersion > currentVersion && MessageBox.Show("Do you want to install the new version now?", "Update Available", MessageBoxButton.OKCancel) == MessageBoxResult.OK)
12: {
13: new MarketplaceDetailTask().Show();
14: }
15: else
16: {
17: MessageBox.Show("Currently no updates available");
18: }
19: }
摘要
这简单的方法,以确保所有用户都运行您的App的最新版本,可以有助于改善当用户正在都运行您的应用程序的旧版本时的例如"应用崩溃了"这些评价。最后需要指出的一点是此示例中的代码使用单击按钮来运行,这段代码无法在应用程序启动时运行。您还可以下载本示例File:CheckForUpdatesSource.zip的源代码。
注:基本借助Bing翻译
创建APP检查更新页的更多相关文章
- 每日一博 | 用 Ionic2 创建 App 启动页滑动欢迎界面
原文 https://my.oschina.net/qinphil/blog/777787 效果如下,图片来自网络 本文例子和上图稍有不同,主要功能如下: 每滑动一下展示一张全屏图片: 滑动到最后一 ...
- Ionic2:创建App启动页滑动欢迎界面
来自:https://my.oschina.net/qinphil/blog/777787 著作权归原创作者所有,如有再转,请自觉标明原创出处,以示尊重! 摘要: 每个有逼格的App在第一次启动时都有 ...
- Cordova app 检查更新 ----创建项目、添加插件、修改插件(一)
原文:Cordova app 检查更新 ----创建项目.添加插件.修改插件(一) 使用Cordova 进行跨平台应用程序的开发 1.创建Cordova项目 $ cordova create hell ...
- iOS - GitHub干货分享(APP引导页的高度集成 - DHGuidePageHUD - ②)
距上一篇博客"APP引导页的高度集成 - DHGuidePageHUD - ①"的发布有一段时间了, 后来又在SDK中补充了一些新的内容进去但是一直没来得及跟大家分享, 今天来跟大 ...
- iOS - GitHub干货分享(APP引导页的高度集成 - DHGuidePageHUD - ①)
好长时间没更新博客, 是时候来一波干货分享了;APP引导页话不多说每一个APP都会用到,分量不重但是不可缺少,不论是APP的首次安装还是版本的更新,首先展现给用户眼前的也就只有它了吧,当然这里讲的不是 ...
- [BS-10] 统一设置app所有页面的“返回”按钮样式
统一设置app所有页面的“返回”按钮样式 如果想统一设置app所有页面的“返回”按钮样式,首先自定义WZNavigationController类继承UINavigationController类,然 ...
- GitHub干货分享(APP引导页的高度集成 - DHGuidePageHUD)
每一个APP都会用到APP引导页,分量不重但是不可缺少,不论是APP的首次安装还是版本的更新,首先展现给用户眼前的也就只有它了,当然这里讲的不是APP引导页的美化而是APP引导页的高度集成,一行代码搞 ...
- iOS Storyboard创建APP 的国际化操作
Storyboard创建APP 的国际化操作 最近在看<X-code江湖录>这本书,看到了APP 国际化这点,刚刚也简单的实践了一下.现在和大家分享分享! 写的这个简单的Demo全都是用 ...
- App启动页倒计时功能
转载请注明出处:http://www.cnblogs.com/cnwutianhao/p/6753418.html 示例代码采用 RxJava + RxLifecycle + Data-Binding ...
随机推荐
- Scrapy 组件的具体用法
一.Spider 用法 在 Scrapy 中,要抓取网站的链接配置.抓取逻辑.解析逻辑都是在 Spider 里完成的.Spider 的一些基础属性和基础方法: name:爬虫名字,Spider的名字定 ...
- 扒一扒PROMISE的原理,大家不要怕!
在前端的日常工作中,回调函数(callback)应该是见怪不怪了,但是当回调函数遇上了异步(async),这就令人发指了.那么异步是什么意思呢,简单地说就是不等你执行完,就先执行下方的代码了. 举个
- 字符串系列——KMP模板整理
KMP模板整理 KMP与扩展KMP: /*vs 2017/ vs code以外编译器,去掉windows.h头文件和system("pause");*/ #include<i ...
- Luogu P4016 「 网络流 24 题 」负载平衡问题
吐槽题目难度,这个题建模好像比前两个都要难,但是难度评级却比第二个要低. 解题思路 依旧是考虑如何建模和建立源点汇点.每个点的货物数量到最后都一样的话肯定是等于他们的平均值.用 $num$ 数组存储原 ...
- ZOJ - 3985 - String of CCPC (思维 + 暴力)
题意: 询问一共有有多少个CCPC,每个得1分,可以自己在任意位置添加字母,第i次添加需要耗费i-1分 思路: 既然每次添加需要耗分,添加第二个字母,相当于没有添加,所以只需要添加一次就好 先计算出原 ...
- C++ 实现Golang里的defer
不多说了,直接贴代码.就一个hpp文件. 1 #include <functional> 2 3 #define CONCAT_(a, b) a##b 4 #define CONCAT(a ...
- linux nethogs-终端下的网络流量监控工具
推荐:更多linux 性能监测与优化 关注:linux命令大全 有很多适用于Linux系统的开源网络监视工具.比如说,你可以用命令iftop来检查带宽使用情况.netstat用来查看接口统计报告,还有 ...
- Django中的模板变量
示例文件: template_variable_demo.zip
- lua排序算法
SEED = ; --随机序列 可任取 NUM = ; --排序规模 --随机序列 初始数据 function GenRnd( seed, n ) --生成随机数 data = {}; local r ...
- ds020507
芯片输出端不加负载的时候,芯片的输出电压是9点多伏. 加上大的负载,芯片发热,电压接近输入电压. 正常负载,芯片输出7.0几伏. 版权声明:本文为博主原创文章,未经博主允许不得转载.