Win10 UWP系列:更新UWP时注意的问题——TargetDeviceFamily

原文:Win10 UWP系列:更新UWP时注意的问题——TargetDeviceFamily

前几天把CurrencyExchanger提交到微软参加Master认证,结果没有通过,反馈了一些错误,看来微软检查还是比较仔细的。

错误主要有:

Visual feedback helps users recognize whether their interactions with your application are detected, interpreted, and handled as they intended.

就是说如果一个列表项点击后没有任何动作的话,不应该有触摸反馈。UWP的ListView项默认会带Tilt效果,以前WP8的时候还要通过另外的Toolkit来实现,现在自带了,反而要想办法去掉。解决办法是自定义ListView的ItemContainerStyle,去掉里面的VisualStateGroup就可以了。

再一个错误:

Windows 10 applications should properly navigate back through pages when using the Windows 10 system back button.

在开发的时候主要针对PC和手机来进行了测试,手机有硬件返回键,所以处理了返回键的事件,PC没有返回键,就没做,但PC有一个平板模式,是可以显示返回键的,这个地方也需要处理。解决办法是增加处理SystemNavigationManager.GetForCurrentView().BackRequested事件即可。

再一个错误是功能性的,搜索货币时无法正常搜索,经检查代码是搜索内容忘了进行大小写转换,可以搜索小写字母,大写字母就搜不到了,属于粗心错误。统一ToUpper或者ToLower就可以了。

还有一个错误是这样的:

The following recommendation is optional and not required for STARTS compliance. With Windows 10 developers can write a single application that can be installed across a variety of device families including Mobile, Desktop, and XBOX. By default, Windows 10 applications target all device families. In the application manifest, this is called out as the ‘Universal’ Target Device Family. Such applications will be tested against all device form factors where this application may be deployed. Alternatively, developers can limit the device families for which an application can be deployed. For example, if ‘Desktop’ is specified and the Target Device Family, that application can only be installed on PC devices. When published, this application will only be available in the Store running on PCs – it will not be available in the Phone store.

The manifest file has Universal as TargetDeviceFamily. The application currently targets only desktop and mobile. It is recommended that the manifest entry is restricted only to supported devices and that a minimum of two device families are supported.

意思是说既然只支持PC和Mobile,就不要把TargetDeviceFamily设置为Universal。我就想当然的在Package.appsmanifest文件里修改了TargetDeviceFamily,设置为只有Desktop和Mobile。

还有一个错误:

The application should adapt properly to portrait or landscape view if supported.

这个是因为在635等分辨率低的机型上运行时,部分字体被截断了。而且在横屏的时候计算器界面也没显示完全。所以发布时应尽可能测试不同分辨率机型保持界面可用性。我调整了国旗图标大小,并且只支持竖屏状态,去掉了横屏支持。

然后顺手修复了几个小bug,开始上传商店。上传后在分析包的过程中出现以下错误:

XD.UWP.CurrencyExchanger_3.1.3.0_x86_x64_arm_bundle.appxupload28.0 MB

此程序包面向最低版本 10.0.0.0,但其依赖于面向最低版本 10.0.10042.0 的框架 Microsoft.VCLibs.140.00 14.0.22929.0。更新程序包中的最小值以指定 10.0.10042.0 的值或更大的值。

此程序包面向最低版本 10.0.0.0,但其依赖于面向最低版本 10.0.10049.0 的框架 Microsoft.NET.Native.Framework.1.2 1.2.23231.0。更新程序包中的最小值以指定 10.0.10049.0 的值或更大的值。

此程序包面向最低版本 10.0.0.0,但其依赖于面向最低版本 10.0.10049.0 的框架 Microsoft.NET.Native.Runtime.1.1 1.1.23406.0。更新程序包中的最小值以指定 10.0.10049.0 的值或更大的值。

该项目是以10586版本开发的, Package.appxmanifest文件中有以下版本号:

<Dependencies>
    <TargetDeviceFamily Name="Windows.Mobile" MinVersion="10.0.0.0" MaxVersionTested="10.0.0.0" />
    <TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.0.0" MaxVersionTested="10.0.0.0" />
  </Dependencies>

于是想当然的把MinVersion改为了10.0.10586.0,但是编译时又报错,说MaxVersionTested不能小于Minversion,于是又把MaxVersionTested也改为10586,还是不行。

这就奇怪了,上次上传的时候也没改这个地方啊。看到有说VC++引用版本错误,又重新升级了一下Sqlite组件,结果还是不行。

UWP的打包速度很慢,反复了好几次,不管是分三个包上传还是一个bundle包,都是一样的错误。

反复对比之后,只能怀疑TargetDeviceFamily了,将Mobile和Desktop改回原来的Universal,再上传就成功了。

暂时没找到这是什么原因导致,难道发布过一次Universal后就只能发布Universal了?

如果您也有遇到类似问题欢迎讨论。

时间: 2024-10-01 04:02:42

Win10 UWP系列:更新UWP时注意的问题——TargetDeviceFamily的相关文章

Win10 UWP系列:关于错误 0x80073CF9及一个小bug的解决

原文:Win10 UWP系列:关于错误 0x80073CF9及一个小bug的解决 最近一直在开发XX的uwp版本,也是边摸索边做,最近遇到几个比较奇怪的问题,记录于此. 1.项目可用部署到PC,但无法部署到手机,提示以下错误: 错误 : DEP0001 : 意外错误: Install failed. Please contact your software vendor. (Exception from HRESULT: 0x80073CF9 为了方便开发,我将常用的类库引用好.默认的几个页面做

Win10通用程序 UWP版HtmlAgilityPack UWP应用使用示例

UWP版HtmlAgilityPack,UWP应用使用示例下载. Win10 发布了一个多星期,sdk是随着一起发布的,我安装好vs2015和sdk 开发UWP 通用程序. 在做网络解析的时候,用nuget 安装 HtmlAgilityPack 发现在UWP 通用程序里无法使用. 刚开始以为版本的问题,随后更换了几个版本号都发现无法使用. 然后到HtmlAgilityPack 官方开源地址:http://htmlagilitypack.codeplex.com/ 下载源码,放到win10 sdk

win10系统更新补丁时进度条一直卡在0%不动的解决方案

为了能够让win10系统更加安全稳定,很多用户都会时不时为自己的电脑安装补丁.不过,部分用户在为win10系统更新补丁时,却会遇到进度条一直卡在0%不动的问题.这该怎么办呢?下面,小编就告诉大家解决该问题的具体方法. 具体如下: 1.ctrl+shift+esc 打开“任务管理器”,找到“服务”页,找到wuauserv,右键选“重新启动”. 2.win+i打开“更新与安全”->windows更新,重试.即可解决.

Win10一周年更新正式版14393.222全面推送

近期微软面向慢速和发布预览(Release Preview)通道用户推送了Win10一周年更新版14393.222累积性更新,补丁具体是KB3194496,现在这一更新也已经面向正式版通道用户推送. 下面为大家整理的Win10 Build 14393.222 (PC) / 14393.221 (Mobile)更新内容: 提升相关稳定性,包括Windows更新代理.驱动分享.VPN虚拟网络.集群.HTTP下载.IE11.Hyper-V虚拟机.多媒体播放和微软Edge浏览器. 提升相关性能,包括推送

三大升级,Win10一周年更新正式版SDK下载

Win10一周年更新系统已经开始推送,现在微软正式放出Win10一周年更新SDK下载,这对Win10 UWP开发者来说至关重要,为Win10一周年更新系统升级最新版UWP应用,集成Windows Ink.新的Cortana API.Windows Hello等等. 下面是Windows10一周年更新SDK主要升级内容: Windows Ink:取决于模拟输入,手写笔称为一种自然输入方式,比如素描绘画.动画制作.签名画板等等.现在只需要两行代码,就可以将Windows Ink添加到UWP应用中,通

Win10一周年更新前瞻:大波Win32应用将上架微软应用商店

9月30日消息,即将到来的Win10一周年更新让许多人十分期待,捕鱼达人为大家带来了Win10一周年更新的最新进展,据外媒报道,本次更新将正式带来对Win32位转制应用的官方支持. 这意味着将有一大Win32应用上架微软应用商店,值得注意的是,上架微软应用商店不代表一定支持UWP平台,许多应用仍然只能在桌面版Win10使用.然而上架微软商店意味着可以直接从商店获取应用与更新,丰富了商店的应用数量,总的来说是一件不错的事情. 在Win10一周年更新预览版推出之际,微软就开启了Project Cen

u盘安装原版win10系统1703更新

7月底,微软发布了win10的1703更新,听说值得一试,于是,安装ultraISO(下载地址http://pan.baidu.com/s/1dFu48d7 密码: 53cg),下载win10的ISO镜像(下载地址 http://pan.baidu.com/s/1dEKCN2T 密码: 5ccu),刻录到u盘,从u盘安装.刻录速度很快,但最终安装失败. 因为FAT32格式的u盘所能支持的单个文件最大为4GB,而1703的ISO镜像resources目录下的install.wim超过4GB,ult

win10中遇到qq视频时摄像头打不开没反应的解决方法

我们在win10系统电脑的使用中,有小伙伴在win10系统的使用中,QQ是我们最常使用到的软件,我们可以直接在上面做很多的操作,qq视频摄像头视频也是我们经常需要使用到的,今天小编就来跟大家分享到我们在win10中遇到qq视频时摄像头打不开没反应的解决方法. 具体的方法和详细的步骤请添加链接描述如下: 1.点击打开开始菜单 - 电脑设置,打开电脑设置窗口:win10中遇到qq视频时摄像头打不开没反应的解决方法-01 2.在打开的电脑设置窗口中,点击打开"隐私"项进入下一步操作: 3.在

调查:Win10一周年更新正式版,你收到推送了吗?

9月29日凌晨,微软面向全球Win10 PC电脑用户开始推送Win10一周年更新正式版系统,版本是Build 14393.10,更新名称是"功能更新到Windows10版本,版本1607",对于Win10用户来说,这也是Win10第二个重大更新. 不过此前根据威尼斯人娱乐场Dona Sarkar的说法,本次Win10一周年更新正式版推送依然会采用分批进行方式,这也就意味着并不是所有的Win10系统都可以在第一时间内收到年度更新推送. 目前全球Win10安装量已经超过3.5亿台,大部分是