19、UWP 新特性(Creator Update)
Build 版本 15063+
1、能够为 CompositionObjects 的其他属性(阴影,裁剪,属性集合)添加动画
2、当设备插上电源的时候,通过 Extended Excution Session api,向系统申请 app一直在后台运行。(14393开始支持)
可以利用这个新特性,申请 app 长时间运行在后台,使离线或者 p2p上传不被中断。
ExtendedExecutionSession Class api 文档:https://docs.microsoft.com/en-us/uwp/api/Windows.ApplicationModel.ExtendedExecution.ExtendedExecutionSession
3、Tile 和 Toast
1) app 可以判断是否 pinned 到了系统的任务栏上;向系统请求固定在任务栏上。(api 在开发中)
使用该 api 可以增加 app在电脑上被用户使用的频率。
2) app 可以检查自己的主磁贴是否 pin 到了开始菜单上;向系统请求固定在系统的 开始菜单上。
在以前 app 只能 pin 二级磁贴到开始菜单。
Primary tile 文档 :https://docs.microsoft.com/en-us/windows/uwp/controls-and-patterns/tiles-and-notifications-primary-tile-apis
3) 可追踪的Tile通知:当用户单击磁贴时,app可以知道当前磁贴上显示的内容(14393)
文档:https://blogs.msdn.microsoft.com/tiles_and_toasts/2016/04/06/chaseable-tiles-know-what-was-clicked-on-your-live-tile-windows-10-uwp/
4) Toast通知中的上下文菜单(14393)
运行开发者在 Toast通知上自定义上下文菜单的操作:
文档:https://blogs.msdn.microsoft.com/tiles_and_toasts/2016/06/10/whats-new-for-toast-notifications-and-action-center-in-windows-10-anniversary-update/
5)Toast的标题分组:
允许为 toast通知提供一个 header,该 header组合多个 toast
文档:https://blogs.msdn.microsoft.com/tiles_and_toasts/2017/01/09/grouping-toast-notifications-under-different-headers-in-action-center-windows-10-creators-update/
6)为 Toast通知添加自定义时间戳(timestamp):
7)Toast快速回复和其它方式场景互动(10240):
8)Toast通知的多次交互(在开发中):
允许具有多个交互步骤的互动式 toast通知。 例如,初始 toast有一个下拉菜单,下一个按钮,然后单击下一步触发一个后台任务,同时让toast处于待处理状态,直到您的应用程序下一步更新toast。
9)通知侦听器(Notification Listener):
允许其它app获取你的通知,可以用来创建可穿戴设备。智能手表可以使用通知侦听器将手机的通知发送到可穿戴设备。 家庭自动化应用程序可以在收到某些通知时执行操作,例如您收到最好的朋友的通知。https://blogs.msdn.microsoft.com/tiles_and_toasts/2016/05/26/notification-listener-documentation-windows-10/
10)在 toast 通知上显示 Progress Bar进度控制(例如下载进度):
11)Tile 通知的背景图片裁剪:
4、App 扩展:uwp 可以使用自己或者第三方开发者提供的插件(也是商店 app),并可以管理插件的安装和卸载。(14393)
Build2016 视频:https://channel9.msdn.com/Events/Build/2016/B808
通过看视频了解,这种插件机制要比 App Service 功能上强一些,不过限制比较多,还是不能在代码中通过自定义接口来调用。研究了一下视频中提供的代码工程(https://github.com/Microsoft/App-Extensibility-Sample),主 app 通过调用第三方插件,可以实现图片的裁切、调节灰度和色彩反转,但其中的机制是第三方插件提供一个 html5本地文件,放到公共文件夹中(主 app 和插件共享的 public 文件夹),然后主app 在 webView 控件中加载这个 html5文件,文件中通过 JavaScript 把图片进行处理后,传递给主 app。其中主 app是把图片先进行 base64转码,变换成字符串后,传递给 webView 中的 JavaScript,处理完后,同样通过 base64转成字符串传递给主 app。过程有点繁琐...
5、控件:
1)ColorPicker控件(开发中)
2)Navigation View控件(开发中)
3)下拉刷新控件Pull to Refresh Control(开发中)
4)新“打分”控件 Ratings Control(开发中)
5)TextBlock 增加删除线:https://docs.microsoft.com/en-us/uwp/api/windows.ui.text.textdecorations
6)Swipe 控件(开发中)
7)Tree View控件(开发中)
6、CompactOverlay模式(画中画):使app处于所有窗口的最前面
对于视频app 来说,类似于应用置顶,不过应用窗口的尺寸有所限制,印象中最大只能到500x500pixel。
Api文档:https://blogs.msdn.microsoft.com/universal-windows-app-model/2017/02/11/compactoverlay-mode-aka-picture-in-picture/
7、使用 show/hide 自定义 page transitions 动画
开发者可以定制在 page transitions动画期间 item 怎样显示和隐藏
8、开发者控制 app的更新(14393)
开发者可以控制 app 的可选/强制更新。开发者可以启用/禁用功能,直到安装更新。
Api 文档:https://blogs.msdn.microsoft.com/appinstaller/2016/11/11/developer-controlled-app-updates/
9、更容易安装 .appx 或者 .appxbundle 文件安装包(14393)
可以使用这个 api 进行非微软商店渠道的方式进行应用程序包的分发。
文档:https://blogs.msdn.microsoft.com/appinstaller/2016/05/27/app-installer/
10、使用灯光,效果图,模糊,噪音资产,混合模式等,以创建更加逼真的用户界面与上下文材质
11、 通过网络在多台设备中设备中分发app包,适用于多人协助开发的场景:
https://blogs.msdn.microsoft.com/appinstaller/2016/11/04/rapid-app-development-using-register-layout-from-network-share-new-in-build-14965/
12、Uwp的后台任务可以与主进程运行在同一个进程中(one-process background task model)(14393)
https://blogs.windows.com/buildingapps/2016/06/07/background-activity-with-the-single-process-model/
13、SVG图标:使用一个静态 SVG资源用作一个 icon/image
https://docs.microsoft.com/zh-cn/uwp/api/windows.ui.xaml.media.imaging.svgimagesource
由于 SVG是矢量图形,在高分屏上也不会出现锯齿,可以替换大尺寸的 png 图标,以减少app包大小。动态 SVG后续会支持
14、 App包的流式(分步)安装:
UWP Streaming Install 可以使你告诉 Windows Store首先下载的部分。当主要部分下载完毕后,用户可以启动并运行你的 app,包的剩余部分可以继续在后台完成加载。
https://docs.microsoft.com/en-us/windows/uwp/packaging/streaming-install
15、ComparePackage 帮助开发者区分新、老安装包:
当用户获取UWP应用程序的更新时,部署堆栈将根据应用程序中的更改块执行差异下载,从而最大限度地减少用户的带宽和更新时间。 在Windows 10 Creators Update中,引入了一个新工具(ComparePackage),允许开发人员了解两个软件包对最终用户的增量影响。 ComparePackage将显示文件的添加,更改和删除,以允许开发人员根据需要进一步优化。
翻译整理参考自:
https://docs.microsoft.com/zh-cn/windows/uwp/whats-new/windows-10-version-1703
https://developer.microsoft.com/en-us/windows/platform/features/winrtregistrationsupportforoptionalpackages/
19、UWP 新特性(Creator Update)的更多相关文章
- Oracle GoldenGate 19.1新特性
1.GoldenGate 19.1 新特性概览a.支持Oracle数据库19.1 长期支持发布版本.集成Oracle GoldenGate 12.3版的最终补丁集更新.b.微服务的安全性和可管理性增强 ...
- Win10/UWP新特性—Drag&Drop 拖出元素到其他App
在以前的文章中,写过微软新特性Drag&Drop,当时可能由于处于Win10预览版,使用的VS也是预览版,只实现了从桌面拖拽文件到UWP App中,没能实现从UWP拖拽元素到Desktop A ...
- Win10/UWP新特性—SharedStorageAccessManager 共享文件
首先先给大家推荐一个UWP/Win10开发者群:53078485 里面有很多大婶,还有很多学习资源,欢迎大家来一起讨论Win10开发! 在UWP开发中,微软提供了一个新的特性叫做SharedStor ...
- 【转】Win10/UWP新特性系列—Web
Internet Explorer Internet Explorer 在Windows 10 升级为Edge模式,是一种交互性和兼容性都很强的新型浏览器,该浏览器相比以前的版本更新了超过2000个操 ...
- Win10/UWP新特性系列—Launcher实现应用间的通信
UWP中,微软为Windows.System.Launcher启动器新增了很多的功能,以前只能启动App,打开指定扩展名文件,对uri协议的解析,以及当启动的应用没有安装时则会提示前往商店下载等. 如 ...
- Win10/UWP新特性系列-GetPublisherCacheFolder
微软Windows Runtime App拥有很强的安全模型来防止不同App之间的数据获取和共享,也就是我们所说的"沙盒机制",每个App都运行在Windows沙盒中,App之间的 ...
- Win10/UWP新特性系列—电池报告
UWP中,新增了当节电模式开启时,App能获取到通知的API,通过响应电源条件的更改,比如咨询用户是否使用黑色背景等来帮助延长电池使用时间. 通过Windows.Devices.Power命名空间中的 ...
- Win10/UWP新特性系列—使用打印机
微软在Win10时代终于完成的设备系统的大统一,"56个民族,56支花……"(⊙o⊙)…,既然统一了,那么也就意味着API也统一了,所以在UWP中,我们就可以使用统一的打印API来 ...
- 你需要了解的 C++ 17 Top 19 新特性(附精彩评论)
什么是 C++17? C++17(或 C++1z)是继 C++14 之后 C++ 编程语言 ISO/IEC 标准的下一次修订的非正式名称.C++17 现在功能已齐全,正在成为国际标准的路上.它的规范已 ...
随机推荐
- Textview文字监控(输入到某个字符后,进行操作)
以手机号充值为例,当用户输入最后一位数时候,进行汇率的变换. 1.首先给用户添加一个textchangedlistener 2.然后再写一个文字变化的监视器 mobile_et.add ...
- iOS App转让流程详情教程篇
最近对公司旗下两款app进行转让,正好记一下操作流程: 1.登录iTunes发布网站,找到app,查看App信息下方有个[转让 App] 按钮. 2.点进去,是如下界面,里面包含是否满足转让条件,理论 ...
- Swift中的Any 与 AnyObject、AnyClass的区别?
在 Swift 中能够表示 “任意” 这个概念的除了Any .AnyObject以外,还有一个AnyClass. Any.AnyObject.AnyClass有什么区别: AnyObject是一个成员 ...
- Java实现多线程的四种实现方式
以计算0到1000之间的和为例 import java.util.ArrayList; import java.util.LinkedList; import java.util.List; impo ...
- python配置文件转dict
配置文件有很多种,如JSON,properties,conf,xml等. 除非需要跟别的语言进行交互,python本身是完全可以取代所有配置文件的.使用python进行配置可以使用非常灵活地执行一些逻 ...
- [Spring学习笔记 5 ] Spring AOP 详解1
知识点回顾:一.IOC容器---DI依赖注入:setter注入(属性注入)/构造子注入/字段注入(注解 )/接口注入 out Spring IOC容器的使用: A.完全使用XML文件来配置容器所要管理 ...
- kafka负载均衡相关资料收集(二)
[转]关于kafka producer 分区策略的思考 from:http://blog.csdn.net/ouyang111222/article/details/51086037 今天跑了一个简单 ...
- RHEL/CentOS 7.x/6.x/5.x开启EPEL仓库
说明 原文链接 翻译:@adolphlwq 项目地址 这篇指南文章教你如何在 RHEL/CentOS 7.x/6.x/5.x 系统中开启EPEL仓库支持,以便你可以使用 yum 命令 安装额外的标准开 ...
- JVM调优总结(一)-- 堆和栈的基本概念
数据类型 Java虚拟机中,数据类型可以分为两类:基本类型和引用类型.基本类型的变量保存原始值,即:他代表的值就是数值本身:而引用类型的变量保存引用值.“引用值”代表了某个对象的引用,而不是对象本身, ...
- @weakify, @strongify
我们知道,在使用 block 的时候,为了避免产生循环引用,通常需要使用 weakSelf 与 strongSelf,写下面这样的代码 __weak typeof(self) weakSelf = s ...