Pergunta

Eu fiz um jogo multiplayer usando o Framework GameKit onde 2 iPhones / iPods podem se conectar uns com os outros via bluetooth e jogo.

Estou pensando em uma maneira de escolher qual dispositivo será capaz de jogar primeiro. Então, a solução lógica é escolher o anfitrião da conexão. Existe até mesmo um servidor e um cliente na GKSession? todos eles são pares? Qual rota devo tomar para conseguir o que eu preciso?

Foi útil?

Solução

Basicamente, é até você para configurar sua sessão como você gosta.

A partir da documentação Apple:

Sessões descobrir outros colegas na rede baseada em um modo de sessão que é definido quando a sessão é inicializado. Sua lata de aplicação configurar a sessão para ser um servidor, que anuncia um tipo de serviço no rede; um cliente, que procura publicidade servidores; ou de um par, que anuncia como um servidor e pesquisas como um cliente ao mesmo tempo.

Uma cópia do seu aplicativo age como um servidor inicializa a sessão chamada initWithSessionID: displayName: sessionMode: com um modo de sessão de qualquer GKSessionModeServer ou GKSessionModePeer. Depois de aplicação configura a sessão, anuncia o serviço, definindo o propriedade isAvailable da sessão para YES.

Uma cópia do seu aplicativo age como um cliente inicia a sessão chamada initWithSessionID: displayName: sessionMode: com um modo de sessão de qualquer GKSessionModeClient ou GKSessionModePeer. após a configuração a sessão, as pesquisas de aplicação a rede para servidores de publicidade, definindo isAvailable da sessão propriedade para YES. Se a sessão é configurada com o GKSessionModePeer modo de sessão também anuncia-se como um servidor, como descrito acima.

Portanto, se você usar GKSessionModePeer para inicializar a sessão, você tem pares (atuando tanto como servidor e cliente). Se você quiser distinguir um servidor de seus clientes, inicialize-o com GKSessionModeServer.

Atenciosamente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top