2012-09-27 255 views
13

我读过不同/冲突的答案,我需要一些确定的答案。测试多人游戏中心游戏

我目前正在开发基于回合的多人游戏Game Center。我一直在关注tutorial @rayWenderlich.com,我已经在模拟器中对玩家进行了身份验证,并且让viewController弹出来了,但是就我而言。

所以,第一个问题是,

  1. 是否有可能在我的代码(通过仿真器),和我的iPhone 连接/匹配/找到彼此的?
    • 我读过,这是不可能的,但我敢肯定,我看到了他们两人的家伙通信
  2. 的YouTube视频什么的回合制游戏中心功能方面可以你只用模拟器和1设备进行测试?

更新:

我并没有想象的东西,有点搜索后,I found that Youtube video.

也许是不同的东西,但它似乎是可能的匹配/播放从模拟器到iOSDevice,然后再回来。与人们说你不能在这里做什么相比,这是如何?

+0

视频不能正常工作 – Aitul

回答

4

我最近为iPhone做了一个基于回合的应用程序,我用我的iPhone和我的电脑上的模拟器来测试它,它工作得很好。有一件事你应该记住,那就是你必须在你的iPhone和模拟器上使用不同的账户进行GC。

我不太清楚你在问题二中的含义,但即使在线上玩时,你也可以使用模拟器提供的所有硬件功能。请记住,您不能在模拟器上测试程序的多人游戏部分,它必须至少在一个设备和模拟器上进行测试。

+1

嗨,PLZ检查下面的链接,https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/GameKit_Guide/TestingYourGameCenter-AwareGame/TestingYourGameCenter-AwareGame.html 测试你iOS模拟器中的游戏 排行榜和成就在iOS模拟器中的工作方式与在设备上的工作方式相同。但是,在iOS模拟器中运行游戏时,可能无法发送或接收邀请函。所以,它是如何为你工作的?..有点困惑。 – Sri

0

是的,您可以在模拟器和设备之间匹配游戏,我之前可以做到这一点,请记住,您必须使用两个不同的Apple/GameCenter帐户。

按照回合制的方面,你在寻找什么,就我所见,在模拟器上,你可以测试任何你可以在设备上的游戏中心方面,所以我想它会取决于在你的后端。

+0

Plz检查我的问题http://stackoverflow.com/questions/16266089/gkmatchrequest-invitation-not-showing-in-other-device,我不明白为什么我没有得到otehr设备的通知。可能是与handleInviteFromGameCenter或GKTurnBasedEventHandlerDelegate相关的issu? – Aitul

5

在模拟器和物理设备上测试的唯一区别是GKTurnBasedEventHandler在模拟器上不起作用。所以,这些方法将不会被调用于iPhone模拟器:在使用iOS Simulator和用于测试的Device

-(void)handleInviteFromGameCenter:(NSArray *)playersToInvite 
-(void)handleMatchEnded:(GKTurnBasedMatch *)match 
-(void) handleTurnEventForMatch:(GKTurnBasedMatch *)match didBecomeActive: (BOOL)didBecomeActive 

,这些方法会被调用设备上而不是在模拟器。所以它很难发展。

+0

任何想法为什么这样? – arik

+0

这都是关于处理器的体系结构。所以我们无能为力。 –

+0

但我有一个建议给你。您可以在iOS模拟器上单击主页按钮来测试您的游戏。当用户按下主页按钮和应用程序图标后,哟必须刷新用户界面。因此,您可以测试我在设备上列出的那些方法,并在模拟器上测试您的viewDidLoad,viewDidAppear等方法。它会像你的模拟器每次处理转弯。 –

0

如果您使用“自动匹配”,则可以使用模拟器。但是,以我有限的经验,可能会出现一些错误,这些错误可能会出现在您以前无法看到的实际设备上。例如,如果编写不好的代码取决于设备的处理速度,才能正确执行。