XBOX ONE游戏开发常见问题
XBOX ONE游戏开发常见问题
终于弄懂这个在Unity的sdk在Account Picker切换账号的机制了,一个手柄注册一个账号,在游戏里面的时候,只有另外一个手柄选择自己的账号,系统的Active User才改变
如果同一个手柄选择另外一个账号的话,不改变系统active user
最基本的 如何让XBOX开发机 开启开发模式?
勾开发者套件
在系统里面依次按下LBRBLTRT
然后重启,重启后会有 开发者设置,里面可设定沙盒等参数
1.微软提供了一个DelegatedAuthServer的ASP.NET网站例子,作用是做SSO登陆服务器
restService.svc里面有一个方法messageOfTheDay
主要是用于测试XBOX Console 发来的令牌解密,
在XBOX Console里调用DLL IMPORT 函数XboxLiveService_CallWebService
会返回False或True,一般False表明用户没有登陆,当然还有其它的几种情况
生成证书,原文档有一些错误,主要是最后-号有问题,然后是生成文件名没有放在最后
正确的如下:
makecert -sv RP_Private_Key.pvk -n "CN=Contoso Relying Party" -b 01/01/2015 -e 12/31/2199 -sky exchange -ss My -a sha256 -len 2048 -r -pe RP_Cert.cer
服务器的证书还出过一次问题,现象为XBOX Console没有把令牌发过来,
经查看服务器,发现证书的私钥管理的用户里,原来的SERVICE变成了?号,重新添加了一下
然后又重新导入后RelyingPart证书解决
*如何得知上面说的其它的几种情况?
由于这个代码是C++写的,在C#中调试,需要启动2个visual stuido2013,
c++项目 选择附加到进程-》XBOX Console 的IP ,在列表中选择XboxOnePlayer.exe
这样就可以调试从托管环境到非托管环境
2.使用UNITY来编写XBOX游戏,使用UNITY提供的插件,出现闪退
UNITY提供的插件有托管的和非托管的,是配对的
比如Friends.dll(C++),那么就有一个FriendsImport.dll(C#),
通过非托管和托管之间进行数据交互,回调
如果少导入一个,启动时会出现闪退,并且编译器也不会提示出错
3.在UNITY发布时出现错误
Failed to Push deploy, AUMID and PFN could not be found in the output.
args: Push "C:/Users/FUX-hp/Desktop/MP2105/MP2105/Building\MP2105"
那时因为UNITY生成的文件都很大,每一次编译需好几分钟,为提高发布效率
有几种DEPLOY METHOD
PACKAGE为完整发布
PUSH和PULL是快速发布
必须先完整发布一次,直接使用PUSH就会报这个AUMID and PFN could not be found的错
4.在编写多人游戏功能时,调用tryWriteSessionAsync时报错0x810910900,但是参数是对的
需要先注册RTA,否则会出这个错
RTAMultiplayerManager.RegisterBothCallbacks(
5.XBOXLIVE服务器抽风造成的问题
某天周一,下午下班后仍在调多人游戏接口,结果程序报异常
还打出好多EXCEPTION,开始是以为程序没布好,但是自已没改过代码
经查看发现
NETRUM: MatchmakingSession::BeginMatchmaking()
NETRUM: SwitchState CreateLobby -> Lobby
== [XBOX SERVICE CALL] #8
[HttpMethod]: POST
[URI]: https://momatch.xboxlive.com/serviceconfigs/8d950100-0b51-40ad-a13c-b0fb56d74423/hoppers/GoodReputationHopper
[RequestHeaders]: Accept-Language: en-US; Content-Type: application/json; charset=utf-8; x-xbl-api-build-version: xdk,6.2.13004.0; x-xbl-build-version: current; x-xbl-contract-version: 103;
[RequestBody]: {"giveUpDuration":300,"preserveSession":"never","ticketSessionRef":{"scid":"8d950100-0b51-40ad-a13c-b0fb56d74423","templateName":"LobbySession","name":"lobby-bb81e728-412c-4c57-a6b7-9a30cd6244b1"}}
[ErrorCode]: 0x00000000
[HTTP Status]:
[HRESULT]: 0x801901f8 HTTP_E_STATUS_GATEWAY_TIMEOUT
[ResponseHeaders]: Connection: close; ;
原来是XBOXLIVE服务器抽风,上官网一看果然如此
http://support.xbox.com/zh-CN/xbox-live-status?icid=furl_status
XBOX ONE游戏开发常见问题的更多相关文章
- XBOX ONE游戏开发之登陆服务器(一)
XBOX ONE游戏开发之登陆服务器(一) XBOX LIVE是微软自已的认证服务器, 当我们开发游戏时,如果是联网游戏,需要自已架设单点登陆(SSO)服务器 这个需要微软提供Relying Part ...
- 从一点儿不会开始——Unity3D游戏开发学习(一)
一些废话 我是一个windows phone.windows 8的忠实粉丝,也是一个开发者,开发数个windows phone应用和两个windows 8应用.对开发游戏一直抱有强烈兴趣和愿望,但奈何 ...
- 《C++游戏开发》笔记十二 战争迷雾:初步实现
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9475979 作者:七十一雾央 新浪微博:http:/ ...
- (转)想从事游戏开发,1 年内能精通 C++ 吗,还需要学习什么?
本人大约从20多年前开始学习及使用C++,但仍未达到我认为「精通」的阶段,甚至对于C++11的各种新特性也未掌握.然而因为我是在读书时自学C++的,也是游戏程序员(原问题中提到题主想从事游戏开发),觉 ...
- 走进VR游戏开发的世界
http://geek.csdn.net/news/detail/76504 我们组在2014年下半年尝试开发了一款Xbox One平台的体感游戏,2015年上半年进行收尾工作的同时,结合之前积累的体 ...
- 使用 .NET 进行游戏开发
微软是一家综合性的网络公司,相信这点来说不用过多的赘述,没有人不知道微软这个公司,这些年因为游戏市场的回报,微软收购了很多的游戏公司还有独立工作室,MC我的世界就是最成功的的案例,现在市值是排在全世界 ...
- 算法、数据结构、与设计模式等在游戏开发中的运用 (一):单例设计(Singleton Design)
算法.数据结构.与设计模式等在游戏开发中的运用 (一):单例设计(Singleton Design) 作者: Compasslg 李涵威 1. 什么是单例设计(Singleton Design) 在学 ...
- 博主有偿带徒 《编程语言设计和实现》《MUD游戏开发》《软件破解和加密》《游戏辅助外挂》《JAVA开发》
<考研专题>操作系统原理 理论解答:8K 实战 1.5W CPU设计 理论解答:1W 实战 2.5W <编程语言设计和实现>初窥门径<5K>:编译原理.编译设计小试 ...
- Android游戏开发实践(1)之NDK与JNI开发03
Android游戏开发实践(1)之NDK与JNI开发03 前面已经分享了两篇有关Android平台NDK与JNI开发相关的内容.以下列举前面两篇的链接地址,感兴趣的可以再回顾下.那么,这篇继续这个小专 ...
随机推荐
- jQuery构造函数init参数分析(三)
分析完了字符串情况剩下的就不多了. 5.参数selector是函数 这个就是很容易想到了,首先说一下dom加载.我们通常在head里面写脚本的时候需要等待文档加载在进行处理,js是这么写的 windo ...
- Flex布局窥探(一)
一.Flex布局是神马? Flex是Flexible Box的缩写,意为‘弹性布局’,用来为盒模型提供最大的灵活性. 任何容器都能被指定为Flex布局: .box{ display: flex; } ...
- 我的BluetoothChat示例源码阅读笔记
BluetoothChat核心类BluetoothChatService,该类用于管理与其他设备的蓝牙连接和设置.该类包含AcceptThread.ConnectedThread.ConnectThr ...
- iOS 设备标识
//UUID NSLog(@"-=-=-=-=-=-=-=-==-=-==qqqqqqqqqqqqqqqqqqqqqqq:::::::::::%@", [[NSUUID UU ...
- Binder中的asInterface解析
在使用AIDL通信的时候,在Stub类中都会生成一个asInterface函数,以<Android开发艺术探索>中的例子来分析,其生成的asInterface函数源码为: /** * Ca ...
- NSFileHandle
/* 文件处理句柄要完成的工作: 相当于C中的文件操作,诸如 打开,读,写,关闭,修改文件偏移量等行为 类名: NSFileHandle 注意: 操作句柄时,重点把握文件的偏移量在哪个位置 重点 ...
- C语言中的字符串
字符串 字符串 用双引号引起来的多个字符. 在C语言中字符串是用’\0’结束的.即每个字符串的最后一个字符是’\0’,但是结束符不显示,仅仅标志该字符串到这儿就结束了. 二.声明字符串 char *s ...
- iOS iOS9.0 的CoreLocation定位
一.简介 iOS9.0如果当前处于前台授权状态,默认是不可以后台获取用户位置. 如果在前台授权下,让其能获取到后台定位,该怎么办 可以设置以下属性为YES,就可以继续获取后台位置,但是会出现蓝条 使用 ...
- 我的android学习经历5
android在strings.xml文件中,写string对象时,如何加入空格 <string name="password">密 码:</string& ...
- 【问题排查记录】Field 'id' doesn't have a default value;
错误信息: org.springframework.dao.DataIntegrityViolationException: StatementCallback; SQL [delete from t ...