我使用 GameKit 框架制作了一款多人游戏,其中 2 个 iPhone/iPod 可以通过蓝牙相互连接并玩。
我正在考虑一种方法来选择哪个设备可以先播放。因此,合理的解决方案是选择连接的主机。 GKSession 中是否有服务器和客户端?他们都是同龄人吗?我该走哪条路才能达到我的需要?
基本上,您可以根据自己的喜好配置会话。
来自苹果文档:
会话发现其他对等点
基于会话模式的网络
会话时设置
已初始化。您的应用程序可以
将会话配置为服务器,
它在上发布服务类型
网络;一个客户端,它搜索
广告服务器;或同伴,其中
像服务器一样做广告和搜索
同时就像一个客户。
您的申请副本作为
服务器通过以下方式初始化会话
呼叫
initWithSessionID:显示名称:会话模式:
会话模式为
GKSessionModeServer 或
GKSessionModePeer。之后
应用程序配置会话,它
通过设置来宣传该服务
session 的 isAvailable 属性设置为 YES。
您的申请副本作为
客户端通过以下方式初始化会话
呼叫
initWithSessionID:显示名称:会话模式:
会话模式为
GKSessionModeClient 或
GKSessionModePeer。配置后
会话中,您的应用程序搜索
广告服务器网络
设置会话的 isAvailable
属性为 YES。如果会话是
使用 GKSessionModePeer 配置
会话模式它也宣传自己
作为服务器,如上所述。
因此,如果您使用 GKSessionModePeer 来初始化会话,您就拥有了对等点(既充当服务器又充当客户端)。如果您想区分服务器和客户端,请使用 GKSessionModeServer 对其进行初始化。
亲切的问候。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)