无法使用 Windows 10 移动技术预览将通用应用程序部署到 phone
Can't deploy universal app to phone with Windows 10 Mobile Tech Preview
我有一个开发者解锁了 Lumia 635 就在昨天更新到 Windows 10 Mobile Technical Preview(OS 版本:10.0.12562.84).
在 Visual Studio 2015 RC 中创建 "Blank App (Windows Universal)" 目标 Windows Phone 10 并尝试将其部署到设备上(并为此目的将配置更改为 ARM)我遇到了这个错误:
Error : DEP0001 : Unexpected Error: A Prerequisite for an install could not be satisfied. (Exception from HRESULT: 0x80073CFD)
快速查看应用 "references" 后发现其中一些特定于 Application Insights(以及少数其他应用),而忽略了我专门 未选中 Application Insights 之前在项目创建对话框中的集成(惊喜!)。所以我将它们全部删除,只留下以下内容(似乎无法删除):
- 分析
- .NET 用于 Windows 商店应用程序
- Windows 通用
但这并没有帮助,不幸的是 - 仍然无法将此 "default" 应用程序部署到 phone。
尽管如此,部署我当前的目标 Windows Phone 8.1 的通用应用程序对于这个 phone 来说是完美的。
工作 OS 是 Windows 8.1 Pro,如果有的话。
更新
上面的删除线不再重要,请参阅已接受的答案。
在 Package.appxmanifest 中尝试将 TargetDeviceFamily 更改为以下内容:
<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.1.0" MaxVersionTested="10.0.1.0" />
我刚刚遇到了@Sevenate 描述的相同问题。
根据@user4855870 的回复,我终于可以将我的空白通用应用程序部署到我的 Lumia 520 运行 W10 TP。
1) 在 phone 上,转到“设置”、“系统”、“关于”、“更多信息”并记下 OS 版本(在我的例子中是 10.0.12534.59);
2) 在 Visual Studio 上,打开 Package.appxmanifest 并在 @user4855870 在 "MinVersion" 上提到的同一行中写入“10.0.1.0”,在 "MaxVersionTested" 上写下您从 phone.
获得的 OS 版本
<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.1.0" MaxVersionTested="10.0.12534.59" />
我的空白通用应用程序可以在计算机上运行,并且 phone 正常 ;)
目前不支持将 Windows 10 应用程序部署到 phones*。该功能预计会在未来的更新中出现(Windows 10 的 phone 版本、开发人员工具或两者)。
现在您可以使用模拟器在 phone 外形规格上测试应用程序。
编辑:这是微软的官方说法:
MS Developer Tools Blog link
*看起来有些人能够破解它来工作
好的,我终于成功地将这个示例应用程序部署到 Windows Phone 10.
简答
在您项目的 Package.appxmanifest 中,将 MinVersion
从“10.0.10069.0”更改为“1.0.22816.1”(出乎意料,哈?)像这样:
<Dependencies>
<TargetDeviceFamily Name="Windows.Universal"
MinVersion="1.0.22816.1"
MaxVersionTested="10.0.10069.0" />
</Dependencies>
更长的答案
在您构建刚从 VS2015 RC 中的新 "Windows 10 Universal Blank App" 模板创建的项目后,原始 Package.appxmanifest 可从 [=69 中的解决方案资源管理器获得=] 将复制到 YourBlankWin10PhoneProject\bin\x86\Debug\Core\AppxManifest.xml
(注意路径中的 Core 子文件夹)和 updated 以及新的依赖 - .NET Core 运行时 包:
<Dependencies>
<TargetDeviceFamily Name="Windows.Universal"
MinVersion="10.0.10069.0"
MaxVersionTested="10.0.10069.0" />
<PackageDependency Name="Microsoft.NET.CoreRuntime.1.0"
MinVersion="1.0.22816.1"
Publisher="CN=Microsoft Corporation, O=Microsoft Corporation,
L=Redmond, S=Washington, C=US" />
</Dependencies>
(不要与原始未修改版本清单的另一个副本混淆,位于YourBlankWin10PhoneProject\bin\x86\Debug\AppxManifest.xml
)
如您所见,MinVersion
两个依赖项不同,应用程序的 比核心运行时组件的 大。现在,如果您从解决方案资源管理器中更新原始 Package.appxmanifest 中的 MinVersion
以匹配 Microsoft.NET.CoreRuntime.1.0
包的 MinVersion
,即1.0.22816.1,下次您构建项目时,清单的 Core 副本将相应更新:
<Dependencies>
<TargetDeviceFamily Name="Windows.Universal"
MinVersion="1.0.22816.1"
MaxVersionTested="10.0.10069.0" />
<PackageDependency Name="Microsoft.NET.CoreRuntime.1.0"
MinVersion="1.0.22816.1"
Publisher="CN=Microsoft Corporation, O=Microsoft Corporation,
L=Redmond, S=Washington, C=US" />
</Dependencies>
现在应用程序应该可以毫无问题地部署到 phone。
PS。在 Deep Dive into XAML and .NET Universal Windows App Development 视频中找到解决此问题的提示,快进到 0:19:50。
我在 .NET/UWP 团队。微软官方回答在这里:
https://msdn.microsoft.com/en-us/library/windows/apps/dn706236.aspx?f=255&MSPPError=-2147217396
让我写出上面 link 的步骤。这些步骤今天适用(2015 年 5 月 20 日,使用在 BUILD 上发布的 VS2015 RC。)在 5 月 14 日之前无法部署到移动设备,当时 Win10 Mobile 的正确版本出来了。
您的机器应该是 运行ning Windows 10,内部版本 10074 或更高版本,来自这里:https://insider.windows.com/
- 我在我的 SurfacePro1 上安装了它 "clean"。为此,首先从 http://windows.microsoft.com/en-us/windows/preview-download, and then use "Rufus" http://rufus.akeo.ie/ 下载 Windows10 的 ISO,以从 ISO 创建可安装的 USB 映像。在 Rufus 中,对于我的 SurfacePro1,我必须选择 "FAT32" 和 "GPT for UEFI"。我不知道你在其他机器上需要什么。
从这里安装 VS2015 RC:https://www.visualstudio.com/en-us/downloads/visual-studio-2015-downloads-vs.aspx
- 在安装过程中,您可以选择要安装的组件。你应该选择"Windows 10 tools and emulators"。安装需要一到几个小时。
- 它将安装 Windows 10 SDK 版本 10069。
- 安装程序存在一些问题。如果您返回到 AddRemovePrograms 并修改安装了 VS2015 RC 的哪些组件,那么它最终会安装比实际更多的组件。
- 第一次使用 VS 运行s 时,它会询问您是否要登录。我以前总是单击 "no",然后它会问我更多配置问题。但是如果我回答 "yes" 并登录,那么它会绕过所有这些配置问题,并且最终会更快。经验教训:我现在总是登录。
您可以在模拟器上运行 Win10 应用程序。模拟器附带 Win10 SDK,运行ning 版本 10069 Win10.Mobile 操作系统也是如此。
您可以在本地计算机上 运行 Win10 应用程序。为此,您的本地计算机必须是 Win10.Desktop 版本 10074 或更高版本并且必须解锁。
- 解锁说明在https://msdn.microsoft.com/en-us/library/windows/apps/dn706236.aspx。这是一个 "TL;DR" 版本:
- 运行 gpedit.msc > 本地计算机策略 > 计算机配置 > 管理模板 > Windows 组件 > 应用包部署。然后右键启用两个东西,
- "Allow all trusted apps to install"
- "Allow development of Windows Store apps"
您可以在 phone 上 运行 Win10 应用程序。为此,您的 phone 必须是 Win10.Mobile 版本 10080 或更高版本(5 月 14 日发布)。您的 phone 必须解锁。
- 解锁说明在https://msdn.microsoft.com/en-us/library/windows/apps/dn706236.aspx。这是一个 "TL;DR" 版本:
- 通过 USB 插入 phone。 运行 "Windows Phone Developer Registration" 桌面工具。
关于 Win10 的关键事实是,您可以针对一个特定的 SDK(例如在 //BUILD 发布的 10069 SDK)编写软件,并且仍然运行它在更新版本的 Win10 上(例如,Win10.Desktop 计划的当前编号为 10074,Win10.Mobile 内部程序的当前编号为 10080。
在 .appxmanifest 文件中,MinVersion="10.0.10069.0" 表示您的应用程序将拒绝部署到任何 运行使用较低版本 Win10 的计算机。
在 .appxmanifest 文件中,MaxVersionTested="10.0.10074.0" 表示如果您的应用部署到 运行 更高版本 Win10 的机器上,那么它可能必须执行 "quirking".
这两个东西都由“项目”>“属性”对话框控制,并且实际上存储在 .csproj/.vbproj 中。
@user4855870、@Rexobias 和@Sevenate 的回答都是黑客。他们坚持为 MinVersion 人为设置低版本,以解决他们尚未更新设备的事实。这是一个公平的方法(我在等待 Win10.Mobile 10080 版本发布时这样做了)。但是既然已经发布了,就不需要这些黑客了,你应该只更新你的设备。
我发现:
解决方案资源管理器 -> 右键单击项目 -> 属性 -> 调试 -> 启动选项 -> 目标设备:选择设备并保存。
再次部署!
希望对您有所帮助!
我有一个开发者解锁了 Lumia 635 就在昨天更新到 Windows 10 Mobile Technical Preview(OS 版本:10.0.12562.84).
在 Visual Studio 2015 RC 中创建 "Blank App (Windows Universal)" 目标 Windows Phone 10 并尝试将其部署到设备上(并为此目的将配置更改为 ARM)我遇到了这个错误:
Error : DEP0001 : Unexpected Error: A Prerequisite for an install could not be satisfied. (Exception from HRESULT: 0x80073CFD)
快速查看应用 "references" 后发现其中一些特定于 Application Insights(以及少数其他应用),而忽略了我专门 未选中 Application Insights 之前在项目创建对话框中的集成(惊喜!)。所以我将它们全部删除,只留下以下内容(似乎无法删除):
- 分析
- .NET 用于 Windows 商店应用程序
- Windows 通用
但这并没有帮助,不幸的是 - 仍然无法将此 "default" 应用程序部署到 phone。
尽管如此,部署我当前的目标 Windows Phone 8.1 的通用应用程序对于这个 phone 来说是完美的。
工作 OS 是 Windows 8.1 Pro,如果有的话。
更新
上面的删除线不再重要,请参阅已接受的答案。
在 Package.appxmanifest 中尝试将 TargetDeviceFamily 更改为以下内容:
<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.1.0" MaxVersionTested="10.0.1.0" />
我刚刚遇到了@Sevenate 描述的相同问题。
根据@user4855870 的回复,我终于可以将我的空白通用应用程序部署到我的 Lumia 520 运行 W10 TP。
1) 在 phone 上,转到“设置”、“系统”、“关于”、“更多信息”并记下 OS 版本(在我的例子中是 10.0.12534.59);
2) 在 Visual Studio 上,打开 Package.appxmanifest 并在 @user4855870 在 "MinVersion" 上提到的同一行中写入“10.0.1.0”,在 "MaxVersionTested" 上写下您从 phone.
获得的 OS 版本<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.1.0" MaxVersionTested="10.0.12534.59" />
我的空白通用应用程序可以在计算机上运行,并且 phone 正常 ;)
目前不支持将 Windows 10 应用程序部署到 phones*。该功能预计会在未来的更新中出现(Windows 10 的 phone 版本、开发人员工具或两者)。
现在您可以使用模拟器在 phone 外形规格上测试应用程序。
编辑:这是微软的官方说法: MS Developer Tools Blog link
*看起来有些人能够破解它来工作
好的,我终于成功地将这个示例应用程序部署到 Windows Phone 10.
简答
在您项目的 Package.appxmanifest 中,将 MinVersion
从“10.0.10069.0”更改为“1.0.22816.1”(出乎意料,哈?)像这样:
<Dependencies>
<TargetDeviceFamily Name="Windows.Universal"
MinVersion="1.0.22816.1"
MaxVersionTested="10.0.10069.0" />
</Dependencies>
更长的答案
在您构建刚从 VS2015 RC 中的新 "Windows 10 Universal Blank App" 模板创建的项目后,原始 Package.appxmanifest 可从 [=69 中的解决方案资源管理器获得=] 将复制到 YourBlankWin10PhoneProject\bin\x86\Debug\Core\AppxManifest.xml
(注意路径中的 Core 子文件夹)和 updated 以及新的依赖 - .NET Core 运行时 包:
<Dependencies>
<TargetDeviceFamily Name="Windows.Universal"
MinVersion="10.0.10069.0"
MaxVersionTested="10.0.10069.0" />
<PackageDependency Name="Microsoft.NET.CoreRuntime.1.0"
MinVersion="1.0.22816.1"
Publisher="CN=Microsoft Corporation, O=Microsoft Corporation,
L=Redmond, S=Washington, C=US" />
</Dependencies>
(不要与原始未修改版本清单的另一个副本混淆,位于YourBlankWin10PhoneProject\bin\x86\Debug\AppxManifest.xml
)
如您所见,MinVersion
两个依赖项不同,应用程序的 比核心运行时组件的 大。现在,如果您从解决方案资源管理器中更新原始 Package.appxmanifest 中的 MinVersion
以匹配 Microsoft.NET.CoreRuntime.1.0
包的 MinVersion
,即1.0.22816.1,下次您构建项目时,清单的 Core 副本将相应更新:
<Dependencies>
<TargetDeviceFamily Name="Windows.Universal"
MinVersion="1.0.22816.1"
MaxVersionTested="10.0.10069.0" />
<PackageDependency Name="Microsoft.NET.CoreRuntime.1.0"
MinVersion="1.0.22816.1"
Publisher="CN=Microsoft Corporation, O=Microsoft Corporation,
L=Redmond, S=Washington, C=US" />
</Dependencies>
现在应用程序应该可以毫无问题地部署到 phone。
PS。在 Deep Dive into XAML and .NET Universal Windows App Development 视频中找到解决此问题的提示,快进到 0:19:50。
我在 .NET/UWP 团队。微软官方回答在这里:
https://msdn.microsoft.com/en-us/library/windows/apps/dn706236.aspx?f=255&MSPPError=-2147217396
让我写出上面 link 的步骤。这些步骤今天适用(2015 年 5 月 20 日,使用在 BUILD 上发布的 VS2015 RC。)在 5 月 14 日之前无法部署到移动设备,当时 Win10 Mobile 的正确版本出来了。
您的机器应该是 运行ning Windows 10,内部版本 10074 或更高版本,来自这里:https://insider.windows.com/
- 我在我的 SurfacePro1 上安装了它 "clean"。为此,首先从 http://windows.microsoft.com/en-us/windows/preview-download, and then use "Rufus" http://rufus.akeo.ie/ 下载 Windows10 的 ISO,以从 ISO 创建可安装的 USB 映像。在 Rufus 中,对于我的 SurfacePro1,我必须选择 "FAT32" 和 "GPT for UEFI"。我不知道你在其他机器上需要什么。
从这里安装 VS2015 RC:https://www.visualstudio.com/en-us/downloads/visual-studio-2015-downloads-vs.aspx
- 在安装过程中,您可以选择要安装的组件。你应该选择"Windows 10 tools and emulators"。安装需要一到几个小时。
- 它将安装 Windows 10 SDK 版本 10069。
- 安装程序存在一些问题。如果您返回到 AddRemovePrograms 并修改安装了 VS2015 RC 的哪些组件,那么它最终会安装比实际更多的组件。
- 第一次使用 VS 运行s 时,它会询问您是否要登录。我以前总是单击 "no",然后它会问我更多配置问题。但是如果我回答 "yes" 并登录,那么它会绕过所有这些配置问题,并且最终会更快。经验教训:我现在总是登录。
您可以在模拟器上运行 Win10 应用程序。模拟器附带 Win10 SDK,运行ning 版本 10069 Win10.Mobile 操作系统也是如此。
您可以在本地计算机上 运行 Win10 应用程序。为此,您的本地计算机必须是 Win10.Desktop 版本 10074 或更高版本并且必须解锁。
- 解锁说明在https://msdn.microsoft.com/en-us/library/windows/apps/dn706236.aspx。这是一个 "TL;DR" 版本:
- 运行 gpedit.msc > 本地计算机策略 > 计算机配置 > 管理模板 > Windows 组件 > 应用包部署。然后右键启用两个东西,
- "Allow all trusted apps to install"
- "Allow development of Windows Store apps"
您可以在 phone 上 运行 Win10 应用程序。为此,您的 phone 必须是 Win10.Mobile 版本 10080 或更高版本(5 月 14 日发布)。您的 phone 必须解锁。
- 解锁说明在https://msdn.microsoft.com/en-us/library/windows/apps/dn706236.aspx。这是一个 "TL;DR" 版本:
- 通过 USB 插入 phone。 运行 "Windows Phone Developer Registration" 桌面工具。
关于 Win10 的关键事实是,您可以针对一个特定的 SDK(例如在 //BUILD 发布的 10069 SDK)编写软件,并且仍然运行它在更新版本的 Win10 上(例如,Win10.Desktop 计划的当前编号为 10074,Win10.Mobile 内部程序的当前编号为 10080。
在 .appxmanifest 文件中,MinVersion="10.0.10069.0" 表示您的应用程序将拒绝部署到任何 运行使用较低版本 Win10 的计算机。
在 .appxmanifest 文件中,MaxVersionTested="10.0.10074.0" 表示如果您的应用部署到 运行 更高版本 Win10 的机器上,那么它可能必须执行 "quirking".
这两个东西都由“项目”>“属性”对话框控制,并且实际上存储在 .csproj/.vbproj 中。
@user4855870、@Rexobias 和@Sevenate 的回答都是黑客。他们坚持为 MinVersion 人为设置低版本,以解决他们尚未更新设备的事实。这是一个公平的方法(我在等待 Win10.Mobile 10080 版本发布时这样做了)。但是既然已经发布了,就不需要这些黑客了,你应该只更新你的设备。
我发现: 解决方案资源管理器 -> 右键单击项目 -> 属性 -> 调试 -> 启动选项 -> 目标设备:选择设备并保存。
再次部署!
希望对您有所帮助!