什么是UWP应用?

如果不熟悉 Windows 平台,或来自 .NET、Windows Forms 或 Silverlight 领域,可能会对 UWP 应用实际上什么感到疑惑。

正如名著中所说:“不必惊慌!”,因为所有一切很快便会清清楚楚。

通用 Windows 平台 (UWP) 应用是一种基于通用 Windows 平台 (UWP) 生成的 Windows 体验,它首次作为 Windows 运行时在 Windows 8 中引入。 用户希望其体验在所有设备上均为移动版,并且希望使用现有的最方便或最高效的设备完成任务,此理念是 UWP 应用的核心。

通过 Windows 10,你可以更加轻松地开发适用于 UWP 的应用,并且只需一个 API 集、一个应用包和一个应用商店,即可访问所有 Windows 10 设备 – PC、平板电脑、手机、Xbox、HoloLens、Surface Hub 等。 对许多屏幕大小以及各种交互模型(无论是触控、鼠标和键盘、游戏控制器还是笔)的支持也更加轻松。 并了解:您无需使用 C# 和 XAML(如果您不想这样做)。 是否要在 Unity 或 MonoGame 中开发? 更喜欢 JavaScript? 这不是问题,使用所有所需的项目。

总而言之:完全可以在单个项目中使用你熟悉的编程语言、框架和 API,将几乎相同的代码运行在现存的大量 Windows 硬件上。 在编写 UWP 应用后,你可以将此应用发布到应用商店以供全球客户浏览。

那么,UWP 应用确切的定义是什么?

什么使 UWP 应用与众不同? 以下特性使 Windows 10 上的 UWP 应用与众不同。

  • 你的目标设备系列,而非某个操作系统。

    设备系列可标识在其中的设备上所需的 API、系统特性和行为。 它还可以确定在其上安装应用商店应用的设备集。

  • 应用使用 .AppX 打包格式进行打包和分配。

    所有 UWP 应用均可作为 AppX 程序包进行分配。 这提供了值得信赖的安装机制,并确保应用可以无缝进行部署和更新。

  • 存在一个适用于所有设备的应用商店。

    注册为应用开发人员后,你可以向应用商店提交应用,并使其在所有设备系列或仅在所选设备系列上可用。 你将在一个位置上提交和管理适用于 Windows 设备的所有应用。

  • 设备系列上有常用 API 图面。

    所有 Windows 设备系列均使用相同的通用 Windows 平台 (UWP) 核心 API。 如果你的应用仅使用核心 API,它将在任何 Windows 10 设备上运行。

  • 扩展 SDK 可在专用设备上装饰你的应用。

    扩展 SDK 可为每个设备系列添加专用 API。 如果你的应用面向特定的设备系列,你可以使用这些 API 装饰该应用。 在调用扩展 API 之前,通过检查应用在什么设备系列上运行,你仍然可以拥有一个在所有设备上运行的应用包。

  • 自适应控件和输入

    UI 元素使用有效像素(请参阅适用于 UWP 应用的响应式设计 101),因此它们会基于设备上可用的屏幕像素数自动自行调整。 而且它们与多种输入类型(如键盘、鼠标、触摸、笔和 Xbox One 控制器)配合良好。 如果你需要进一步为特定屏幕大小或设备定制 UI,新的布局面板和工具将帮助你使 UI 适应运行应用的设备。

有关 UWP 的详细信息,请参阅通用 Windows 平台应用指南

使用一种你已知道的语言

你可以使用最熟悉的编程语言(如 C# 或 Visual Basic 和 XAML、JavaScript 和 HTML,或 C++ 和 DirectX 和/或 Extensible Application Markup Language (XAML))创建 UWP 应用。 你甚至可以采用一种语言编写组件,然后在采用另一种语言编写的应用中使用这些组件。

UWP 应用可以使用 Windows 运行时,它是一个内置于操作系统的本机 API。 此 API 采用 C++ 实现,并支持 C#、Visual Basic、C++ 和 JavaScript,且对于每种语言都以非常自然的方式支持。

Microsoft Visual Studio 2015 为每种语言提供 UWP 应用模板,该模板允许你为所有设备创建单个项目。 完成工作后,你可以生成应用包,并将其从 Visual Studio 提交到 Windows 应用商店,以向任何 Windows 10 设备上的客户提供你的应用。

在 Windows 上构建 UWP 应用

在 Windows 上,你的应用可以向用户提供相关且实时的信息,并且吸引他们再次访问更多信息。 在现代应用经济中,你的应用必须具有足够的吸引力才能受到用户的青睐。 Windows 为你提供了大量资源,使你的用户会回过头来使用你的应用:

  • 动态磁贴和锁屏可以显示上下文相关且实时的信息概览。
  • 推送通知可在用户需要时,提供实时的突发提醒来引起用户的注意。
  • 操作中心可让你组织和显示用户需要采取操作的通知和内容。
  • 后台执行和触发器使你的应用仅在用户需要时才会运行。
  • 你的应用可以使用语音和蓝牙 LE 设备 来帮助用户与周围的世界进行交互。

最后,你可以使用漫游数据和 Windows 凭据保险箱,在用户运行你的应用的所有 Windows 屏幕上提供一致的漫游体验。 通过漫游数据可以方便地在云中存储用户的首选项和设置,而无需生成你自己的同步基础结构。 另外,你可以将用户凭据存储在凭据保险箱中,该功能最为重视安全性和可靠性。

以你自己的方式销售应用

在 Windows 上,你可以选择以何种方式销售自己的应用—通过手机、平板电脑、PC 以及其他设备。 我们提供了多种方式让你通过自己的应用及其提供的服务来获得收益。 你只需选择最适合自身的方式即可。

  • 付费下载是最简单的选项, 你只需指定价格即可。
  • 试用是一种绝佳的销售方式,即允许用户在购买前先试用你的应用,与更传统的“免费模式”选项相比,用户更易于发现你的应用并转而使用该应用。
  • 应用内购买是通过自己的应用获得收益的最灵活选项。

让我们开始吧

有关 UWP 详细信息,请参阅通用 Windows 平台应用指南。 然后,请查看准备工作以下载开始创建应用所需的工具。

相关主题

更多高级主题

时间: 2024-09-27 16:11:59

什么是UWP应用?的相关文章

Windows 10 UWP 部署

原文  http://youthlin.com/20151105.html 我们知道VS连接手机可以直接部署到手机里,但平板貌似无法这样干,平板与电脑连接没有丝毫反应……那么想看VS里写的uwp应用在平板上的运行情况怎么办呢? 如果是本机电脑的话,也可以直接调试,要是平板———— 当然是部署啦,不过怎么部署呢,网上搜到的有命令行 winappdeploycmd.exe 命令的,有Win8.1时代部署方法的,我用winappdeploycmd.exe试了一下,一直无法找到设备,连手机也搜不到,于是

Windows 10 UWP程序标题栏设置

原文:Windows 10 UWP程序标题栏设置 在Windows 10程序中,以前只能用于全屏方式的Metro程序现在可以运行在窗口模式下了,并且改了个新名字,叫Windows 通用程序(Universal Windows app),简称UWP程序.新的UWP程序虽然大体上还是和以前的Metro程序差不多的,但还是引入了一点新东西的,本文这里就介绍一下它的标题栏设置的几个特性. 隐藏标题栏: 将应用界面扩展至 Titlebar 区域 CoreApplication.GetCurrentView

设置UWP程序自启动(Automate launching Windows 10 UWP apps)

原文:设置UWP程序自启动(Automate launching Windows 10 UWP apps) 在开发UWP程序的过程中,有时候需要设置程序的自启.本人实现的步骤如下: 1.在VS中激活Protocol (Package.appxmanifest --> Declarations --> Add Protocol),图示如下: 2.编译并发布项目(Build and Deploy) 发布之后Protocol被激活,在(控制面板 --> 程序 --> 默认程序 -->

UWP开发之Mvvmlight实践九:基于MVVM的项目架构分享

在前几章介绍了不少MVVM以及Mvvmlight实例,那实际企业开发中将以那种架构开发比较好?怎样分层开发才能节省成本? 本文特别分享实际企业项目开发中使用过的项目架构,欢迎参照使用!有不好的地方欢迎指点! 基于MVVM的UWP项目架构 每个项目或者目录下需要什么文件如下图所示: 项目参照关系: 备注:如果使用Entity Framework Core做ORM持久层,只需要将UA.DataAccess层做替换就可以.希望本文能对您的团队开发带来一定功效.

UWP开发之Mvvmlight实践四:{x:bind}和{Binding}区别详解

{x:bind}是随着UWP被推出而被添加的,可以说是Win10 UWP开发专有扩展.虽然 {x:Bind} 缺少{Binding} 中的一些功能,但它运行时所花费的时间和使用的内存量均比 {Binding} 要少,且支持更好的调试. 参照网址:{x:Bind} 标记扩展,GitHub微软UWP实例之XamlBind 1,{x:Bind} 基本原理 在 XAML 加载时,{x:Bind} 将转换为你所需的绑定对象,此对象将从数据源上的某一属性中获取相关值.绑定对象可以配置为观察数据源属性值的更改

UWP开篇

我从WP8开始就在用Lumia手机,一路用到现在的WM10,电脑也早就参加Windows Insider用上了预览版. 最近WM10的负面消息很多,而主要的原因就是缺乏应用,缺少应用,这样就形成了一个循环,不仅各大厂商不愿意开发就连许多独立开发者也纷纷离开了,用户也减少了很多,看到这些难免也有些伤感. 我个人很喜欢Windows10这个平台,有时候自己想要的应用都没有, 尼玛年会抽奖微信居然还不能登陆微信抽奖的公众号!!! 尼玛年会抽奖微信居然还不能登陆微信抽奖的公众号!!! 尼玛年会抽奖微信居

在uwp仿IOS的页面切换效果

有时候我们需要编写一些迎合IOS用户使用习惯的uwp应用,我在这里整理一下仿IOS页面切换效果的代码. 先分析IOS的页面切换.用户使用左右滑动方式进行前进和后退,播放类似于FlipView的切换动画.导航到新页面时,使用页面前进的动画. UWP自带很多切换效果,位于 Windows.UI.Xaml.Media.Animation 中.与苹果的切换效果最接近的是 PaneThemeTransition (而不是EdgeUIThemeTransition). PaneThemeTransition

Windows UWP应用使用本地Sqlite和远程Sql(一)

贫猿注册博客园有三年多了,第一次写博客,版式尽量控制的简单点. 本系列文章是简单的记录一下<账簿>本身所运用到的操作本地sqlite和远程sql的代码和结构. 首先的准备工作 安装Sqlite for UWP扩展 从菜单栏找到工具-扩展和更新.在搜索框填写sqlite,在结果里找到“sqlite for Universal App Platform”并安装它. 新建一个8.1的windows 应用,并添加sqlite for windows runtime(8.1)的支持.这时会自动生成SQL

张高兴的 Xamarin.Forms 开发笔记:为 Android 与 iOS 引入 UWP 风格的汉堡菜单 ( MasterDetailPage )

所谓 UWP 样式的汉堡菜单,我曾在"张高兴的 UWP 开发笔记:汉堡菜单进阶"里说过,也就是使用 Segoe MDL2 Assets 字体作为左侧 Icon,并且左侧使用填充颜色的矩形用来表示 ListView 的选中.如下图 但怎样通过 Xamarin.Forms ,将这一样式的汉堡菜单带入到 Android 与 iOS 中呢? 一.大纲-细节模式简介 讲代码前首先来说说这种导航模式,官方称"大纲-细节模式"(MasterDetail).左侧的汉堡菜单称为&qu