Windows Phone开发手记-WinRT下启动器替代方案

在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文档,希望这些对大家有用。

时间: 2024-12-30 10:56:25

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

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

Windows Phone版本号自升入8.1以来,开发者就多了一个选项,开发基于WinRT架构的WP或者Universal Windows App.然而开发框架转为WinRT后,很多原有的WP8基于Sliverlight框架的控件和方法变得不再有效,这无疑带来较大的困扰.今天我要讲述的就是此类问题中较易出现的列表拼音分组方案,本文基于WinRT架构予以实现,下面附上实现效果图: 解决方案: 在WP8下,Silverlight提供了LongListSelector控件,可以方便的实现以上的拼音分组

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

这里的ItemsControl指的是Xaml里的集合控件,包括ListView,GridView等,此篇博客主要参考MSDN Blog的一篇文章,具体出处为:http://blogs.msdn.com/b/mim/archive/2013/04/16/winrt-create-a-custom-itemspanel-for-an-itemscontrol.aspx ,同时做了对Windows Phone的一些修改和适配. 首先,正常的GridView,和ListView的样式我就不在这里列出了,

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

1.自定义Spinner 首先,定义Spinner要显示的项目列表/res/values/arrays.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <resources> 3 <string-array name="citys"> 4 <item>南京</item> 5 <item>徐州</item> 6 <

Windows Phone开发人员必看资料

win phone开发必看资料,下载地址收藏啦!收藏后可有选择性的下载,希望大家喜欢! 完整附件下载:http://down.51cto.com/data/414417 附件预览: Windows Embedded Standard开发初体验[课件汇总] http://down.51cto.com/data/65627 利用Windows Embedded Standard 7构建操作系统映像 http://down.51cto.com/data/65761 Windows Embedded S

windows phone开发-windows azure mobile service使用入门

在使用azure之前,我一直只能做本地app,或者使用第三方提供的api,尽管大多数情况下够用,但是仍不能随心所欲操纵数据,这种感觉不是特别好.于是在azure发布后,我就尝试使用azure来做为个人数据中心,可选的方式有很多,但今天我给大家介绍的是azure mobile service. 1.创建Mobile Service Azure中创建Mobile Service很简单,与创建其他项目类似,流程如下: i. ii. iii. ii 这里我使用的是Windows Azure国际版,经过简

Windows驱动开发基础(八)内存管理

Windows驱动开发基础系列,转载请标明出处:http://blog.csdn.net/ikerpeng/article/details/38826159 就32位的计算机来说,他有4G的真实的物理内存.但是这样是不够的,于是引入了虚拟内存的概念.使得每一个进程都有4G的虚拟内存. 虚拟内存实际上就是采用了一种映射的方式.4G的内存实际上被分页.一般来说一个页的大小是4K.也是说它被分为了1M个页.在这么多的页里面,有一部分是对应于物理内存的(可以是多对一的):有一部分是对应于磁盘上的空间,但

[转]灯灯小程序开发手记:仿今日头条(上)

本文转自:http://www.jianshu.com/p/a1e0b8abb12d 写在前面 新的一年,祝大家新年快乐!当然对于程序员来说,新的一年,也要有新的改变.因此灯灯决定凑热闹编写微信小程序啦! 上一篇文章<记一次小程序开发过程>中,灯灯大致写了下自己第一次开发小程序的感受和流程.这一次灯灯会详细记录下自己制作一个小程序的思路.遇到的问题.涉及到的代码等和大家分享.    视频教程地址:http://study.163.com/course/introduction.htm?cour

基于科大讯飞语音云windows平台开发

前记: 前段时间公司没事干,突发奇想想做一个语音识别系统,看起来应该很简单的,但做起来却是各种问题,这个对电气毕业的我,却是挺为难的.谷姐已经离我们而去,感谢度娘,感谢CSDN各位大神,好歹也做的是那么回事了,虽然还是不好用,但基本功能实现了. 该软件使用VS2008C++/CLR开发,由于科大讯飞提供的是C的API接口,结果到这边就是各种不兼容,CLR是基于托管堆运行的,而这个API有是非托管堆的,使用了各种指针,原本打算使用C#来做,最后门外汉的我也没能做到C#和C指针完美结合,真怀恋单片机

Windows UWP开发系列 – RelativePanel

RelativePanel是在Windows 10 UWP程序中引入的一种新的布局面板,它是通过附加属性设置元素间的位置关系来对实现布局的.一个简单的示例如下: <RelativePanel>????<TextBox x:Name="textBox1" Text="textbox" Margin="5"/>????<Button x:Name="blueButton" Margin="5