如何分辨来自客户端在iPhone主机与蓝牙的GameKit(How to tell the host

2019-06-24 01:24发布

我已经使用的GameKit框架,其中2部iPhone / iPod播放器可以通过蓝牙和游戏连接到对方做了一个多人游戏。

我想到了一个办法,选择哪个设备将能先玩。 因此,合理的解决方案是选择连接的主机。 有没有连服务器,并在GKSession客户端? 他们是所有的同行? 哪条路线我将实现我需要什么?

Answer 1:

基本上,它是你的,只要你喜欢配置您的会话。

从Apple文档:

会议探索基于当会话初始化其设置会话模式网络上的其他同行。 您的应用程序可以在会话配置是一个服务器,它发布在网络上的服务类型; 一个客户端,搜索广告服务器; 或对等体,其通告像服务器和搜索等同时的客户端。

显示名:sessionMode:无论使用哪种GKSessionModeServer或GKSessionModePeer的会话模式作为服务器应用程序的副本通过调用initWithSessionID初始化会话。 该应用程序配置会话后,由会议的isAvailable属性设置为YES通告服务。

显示名:sessionMode:无论使用哪种GKSessionModeClient或GKSessionModePeer的会话模式作为客户端应用程序的副本通过调用initWithSessionID初始化会话。 配置会话后,您的应用程序通过会话的isAvailable属性设置为YES搜索网络广告服务器。 如果会话被配置成与GKSessionModePeer会话模式它也通告本身作为一个服务器,如上所述。

因此,如果你使用GKSessionModePeer初始化会话,你有同伴(既作为服务器和客户端)。 如果你想从客户区分服务器,与GKSessionModeServer初始化。

亲切的问候。



文章来源: How to tell the host from the client in iPhone bluetooth with GameKit