在WP7/8时代,Silverlight框架提供了很多启动器API,我们可以很方便的使用的,来完成一些系统级的操作。但是随着Win RT架构的WP8.1(SL 8.1除外)的到来,原有的SL下的启动器API均不再可用。所幸,Win RT框架下提供的一些基于Uri协议的方案弥补了部分原有的功能缺失。今天我给大家分享,一些Win RT下的一些启动协议。

1.调用系统内置app

使用方式:

await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-settings-wifi:"));
Uri 方案 说明
ms-settings-airplanemode: 启动“飞行模式”设置页面。
ms-settings-bluetooth: 启动“蓝牙”设置页面。
ms-settings-camera: 启动“照片 + 相机”设置页面。
ms-settings-cellular: 启动“手机 + SIM”设置页面。
ms-settings-emailandaccounts: 启动“电子邮件 + 帐户”设置页面。
ms-settings-location: 启动“位置”设置页面。
ms-settings-lock: 启动“锁屏”设置页面。
ms-settings-notifications: 启动“通知 + 操作”设置页面。
ms-settings-power: 启动“节电模式”设置页面。
ms-settings-proximity: 启动“NFC”设置页面。
ms-settings-screenrotation: 启动“屏幕旋转”设置页面。
ms-settings-wifi: 启动“Wi-Fi”设置页面。
ms-settings-workplace: 启动“工作区”设置页面。

2.其他系统保留Uri协议

Windows Phone 为内置应用保留以下 Uri 方案。

bing、callto、dtmf、http、https、mailto、maps、ms-excel、ms-powerpoint、ms-word、office、onenote、tel、wallet、xbls、zune

Windows Phone 为操作系统保留以下 Uri 方案。

Explorer.AssocActionId.BurnSelection、Explorer.AssocActionId.CloseSession、Explorer.AssocActionId.EraseDisc、Explorer.AssocActionId.ZipSelection、Explorer.AssocProtocol.search-ms、Explorer.BurnSelection、Explorer.CloseSession、Explorer.EraseDisc、Explorer.ZipSelection、File、Iehistory、Ierss、Javascript、Jscript、LDAP、Res、rlogin、StickyNotes、telnet、tn3270、Vbscript、windowsmediacenterapp、windowsmediacenterssl、windowsmediacenterweb、WMP11.AssocProtocol.MMS

根据协议名称均可明白起所启动app,使用方式同上:

await Windows.System.Launcher.LaunchUriAsync(new Uri("maps:"));

3.与应用商店相关Uri协议

应用商店跳转,评分等api对开发者来说是十分重要,不行的是Win RT下带来了很大的变化,如下:

//商店根据appid跳转
var uri = new Uri(string.Format(@”zune://navigate/?appid={0}”, appid));
//关键字搜索
var uri = new Uri(string.Format(@”zune://search/?keyword={0}”,keyword));
//商店根据appid跳转评论
var uri = new Uri(string.Format(@”zune://reviewapp/?appid={0}”, appid));
await Windows.System.Launcher.LaunchUriAsync(uri);

总结:

WP8.1还有很多较大的变化,但是其本质和SL相似,碰到这些变化,需要我们多留心下相关的API文档,希望这些对大家有用。

Windows Phone开发手记-WinRT下启动器替代方案的更多相关文章

  1. Windows Phone开发手记-WinRT下分组拼音的实现

    Windows Phone版本号自升入8.1以来,开发者就多了一个选项,开发基于WinRT架构的WP或者Universal Windows App.然而开发框架转为WinRT后,很多原有的WP8基于S ...

  2. Windows Phone开发手记-WinRT下自定义圆形ItemsControl

    这里的ItemsControl指的是Xaml里的集合控件,包括ListView,GridView等,此篇博客主要参考MSDN Blog的一篇文章,具体出处为:http://blogs.msdn.com ...

  3. Android开发手记(10) 下拉菜单Spinner

    1.自定义Spinner 首先,定义Spinner要显示的项目列表/res/values/arrays.xml <?xml version="1.0" encoding=&q ...

  4. Windows Phone开发(23):启动器与选择器之CameraCaptureTask和PhotoChooserTask

    原文:Windows Phone开发(23):启动器与选择器之CameraCaptureTask和PhotoChooserTask 这两个组件都属于选择器,而且它们也有很多相似的地方,最明显的上一点, ...

  5. Windows Phone开发(26):启动器与选择器之MediaPlayerLauncher和SearchTask

    原文:Windows Phone开发(26):启动器与选择器之MediaPlayerLauncher和SearchTask 启动器与选择器简单的地方在于,它们的使用方法几乎一模一样,从前面几节中,我相 ...

  6. windows RT开发笔记:WinRT DLL及其调用研究

    一. 几个概念: WinRT : Windows Runtime, windows运行时.创建Windows运行时(WinRT)是为了在Windows上给用户提供一种流畅且安全的应用体验.WinRT会 ...

  7. Kinect for Windows SDK开发入门(15):进阶指引 下

    Kinect for Windows SDK开发入门(十五):进阶指引 下 上一篇文章介绍了Kinect for Windows SDK进阶开发需要了解的一些内容,包括影像处理Coding4Fun K ...

  8. Windows Phone开发(25):启动器与选择器之WebBrowserTask

    原文:Windows Phone开发(25):启动器与选择器之WebBrowserTask 从名字上就看出来,这个家伙就是打开浏览并浏览到指定页面. 它有两个用途完全一样的属性:Uri属性是Syste ...

  9. Windows Phone开发(24):启动器与选择器之发送短信

    原文:Windows Phone开发(24):启动器与选择器之发送短信 本节我们通过一个简单的发送短信示例来演示一下如果配合使用PhoneNumberChooserTask和SmsComposeTas ...

随机推荐

  1. 2019.01.04 bzoj2962: 序列操作(线段树+组合数学)

    传送门 线段树基础题. 题意:要求维护区间区间中选择ccc个数相乘的所有方案的和(c≤20c\le20c≤20),支持区间加,区间取负. 由于c≤20c\le20c≤20,因此可以对于每个线段树节点可 ...

  2. 2018.11.24 poj3693Maximum repetition substring(后缀数组)

    传送门 后缀数组好题. 考虑枚举循环节长度lenlenlen. 然后考虑枚举循环节的起点来更新答案. 但是直接枚举每次O(n)O(n)O(n). 考虑枚举len∗k+1len*k+1len∗k+1作为 ...

  3. 实现一套山寨springMVC

    重复造轮子没有意义,但是通过现已存在的轮子,模仿着思路去实现一套,还是比较cool的.花了三天,终于深夜搞定!收益都在代码里,我干了,您随意! 一.简单思路 简单介绍: 1.所有的请求交给TyDisp ...

  4. Win7 VS2013环境编译CGAL-4.7

    看到有人在QQ空间感叹编译CGAL配置折腾了一天时间,自己也想试试,虽然并不打算用,但感觉这库也挺有名的,想必日后用得着,于是着手试着编译. 首先是看一下官网的windows下配置说明 http:// ...

  5. CString int转换

    1.CString 转 int      CString strtemp = "100";    int  intResult;    intResult= atoi(strtem ...

  6. 整合Spring+Struts2+Mybatis加spring单元测试等

    前言 自己是在CentOS7的IntelliJ IDEA里开发的,里面中文输入法有问题经常用不了,所以这里用了很多chinglish,希望不要介意: 一:pom依赖 <?xml version= ...

  7. 同时安装python2.7和python3.5

    同时安装python2.7和python3.5,并配置sublime ctrl+B选择运行python版本 安装python 首先是安装两个版本的python,并配置相应的环境变量 1.在下载安装好P ...

  8. AngularJS封装UEditor

    <!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8& ...

  9. python_day1_python第一个程序 hello world

    Python 第一个程序 1)安装好python后,cmd进入DOS下,直接输入python Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06 ...

  10. silverlight导出图片文件

    新建一个Silverlight应用程序,添加下面两个控件: image控件:image1: Button控件:Click="Button1_Click"; code-Behind代 ...