【UWP开发】如何将win10 UWP应用安装部署到xbox one

9 篇文章 0 订阅

之前部署的时候使用的是xbox one直接打包然后安装部署到xbox one上面,如何使用xbox直接安装

现在为了支持uwp一次打包多平台部署的优势,一直想不到怎么安装到xbox,看微软的官网明白了:

https://docs.microsoft.com/zh-cn/windows/uwp/xbox-apps/getting-started


uwp xbox one现有问题以及解决方案

https://forum.unity3d.com/threads/uwp-xbox-one-issue-s.426963/


下载的xboxlive sdk里面有示例XboxLiveSDK-1612-20170114-002\SourceAndSamples\Samples


1、对于 C#:创建一个新的通用 Windows 项目、转到项目属性中并选择“调试”*选项卡、将“目标设备”更改为“远程计算机”、在“远程计算机”字段中键入 Xbox One 主机的 IP 地址或主机名,然后在“身份验证模式”下拉列表中选择“通用(未加密协议)”*。
你可以通过在主机上启动“开发人员主页”(“主页”右侧的大磁贴)并查看左上角找到你的 Xbox One IP 地址。 有关开发人员主页的详细信息,请参阅 Xbox One 工具简介。


2、对于 C++ 和 HTML/Javascript 项目:你遵循相似路径,但在项目属性中,转到调试选项卡、在调试器中选择远程计算机打开下拉列表、在计算机名称字段中键入主机的 IP 地址或主机名,然后在身份验证类型字段中选择通用(未加密协议)。


3、按 F5 后,你的应用将生成并开始在 Xbox One 上部署。


4、第一次执行此操作时,Visual Studio 将提示你为 Xbox One 输入 PIN。 你可以通过在 Xbox One 上启动“开发人员主页”并选择“与 Visual Studio 配对”****按钮获取 PIN。


5、在配对后,你的应用将开始部署。 第一次执行此操作时可能有点慢(我们将所有工具复制到 Xbox),但是如果它不只需要几分钟,则可能出现了某些错误。 请确保你已遵循以上所有步骤(尤其是你是否已将“身份验证模式”*设置为“通用”*?),并且你正在使用与 Xbox One 的有线网络连接。


6、坐下来放松。 享受你的第一个在主机上运行的应用!


--------------------------------------------------------------------------


如何部署appx文件到xbox one

1、xbox one和pc在同一个局域网
2、打开xbox one开发人员主页,进入Xbox Device Portal
3、在pc上使用浏览器打开Xbox Device Portal上面的地址,如:https://xboxone:11443
4、切换到Home标签,点击Add-UWP Deployment
5、选择Install packaged application,选择文件.appx或者.appxbundle,点击Next
6、选择Dependencies下的文件,点击Next,即可安装


--------------------------------------------------------------------------

uwp打包到xbone one运行一卡一卡

是因为uwp在xbox one开发机运行目前只能使用25%

-----------------------------------------------------------------------

打包到xbox one机器有个虚拟鼠标

打包设置XAML会这样的,修改成D3D即可,或者使用下面代码

Cursor.lockState = CursorLockMode.Locked;
Cursor.visible = false;​

----------------------------------------------------------------------

BuildSettings D3D和XAML区别

游戏用D3D,只是UWP的显示方式,但D3D兼容性更好

-----------------------------------------------------------------

uwp项目在visual studio三种打包方式

Debug for debugging purposes
Release for profiling
Master for submission to store

------------------------------------
报错:System.TypeInitializationException at appCallbacks.SetBridge(_bridge)
_bridge = new WinRTBridge.WinRTBridge();
appCallbacks.SetBridge(_bridge);

解决办法:
https://issuetracker.unity3d.com/issues/wsa-player-throws-system-dot-typeinitializationexception-exception-on-launch
https://forum.unity3d.com/threads/system-typeinitializationexception-at-appcallbacks-setbridge-_bridge.376591/?_ga=1.117350534.1260769982.1474618081
这是unity的bug。看unity5.5.4的发行说明里面有写这个已经修复。
不过我更新了unity之后还是依旧报错,可以按照以下方式排除错误:
1、首先,创建一个空项目,然后编译出来在vs运行看是否报错
2、如果没有报错,那就是xboxlive环境设置有问题,看看是不是Nuget没有引用xboxlive源
3、如果报错,那估计还是unity的bug

--------------------------------------------
编译报错.winmd 文件“Windows.Gaming.XboxLive.StorageApiContract.winmd”包含类型“Windows.Gaming.XboxLive.Storage.GameSaveContainer”。所使用的 Windows 命名空间已被保留。
解决方法:将xxx(Universal windows)下的Windows.Gaming.XboxLive.StorageApiContract.winmd删除

-------------------------------------------------------------

如何设置应用禁止拉伸

uwp不能设置,https://forum.unity3d.com/threads/how-to-disable-window-resize-on-uwp-pc.453342/

------------------------------------------------------------

uwp unity 日志

C:\Users\cottongame\AppData\Local\Packages\Dreamoji.LittleTriangle_zkx49mwn8zwb6\TempState

--------------------------------------------------------------

如何查看uwp在xbox上的日志

和xbox one的查看日志方式一样,使用xbox one manager,然后运行应用的时候勾选 Capture Debug Output
注意:只有Debug包才可以勾选,release和Master包都是禁用的

-------------------------------------------------------------

在xbox上运行报错-1073741819 (0xc0000005) 'Access violation',在pc是好的

因为是Debug发布,Release就好了,xbox好像只能用Release运行,Master和Debug都不行

--------------------------------------------------------

打包之后,右下角一直有个Development build选项,unity buildsetting设置取消了development build也还在

使用Master选项发布,development build就没有了

-------------------------------------------------------

在windows Store平台,Screen.resolutions返回为所有支持的分辨率,超级多,要自己过滤掉,如过滤16:9


---------------------------------------------------------

应用商店检测工具检测API不支持

Master版本就好了

------------------------------------------------------------
通过该网站查看错误代码的意思:http://support.xbox.com/en-US/error-code-lookup/?code=0x80004005
查看xbox live状态:http://support.xbox.com/en-US/xbox-live-status

-------------------------------------------------------

登陆xbox live报错System.Runtime.InteropServices.COMException(0x80004005)

随机的,不知道啥情况,一会自己好了。
切换了开发机就ok了,估计是开发机被玩坏了。

-----------------------------------------------------

徽章徽标只能用单色(白色和透明色)

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 18
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鱼蛋-Felix

如果对你有用,可以请我喝杯可乐

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值