문제

2 개의 iPhone/iPod이 Bluetooth 및 Play를 통해 서로 연결할 수있는 GameKit 프레임 워크를 사용하여 멀티 플레이어 게임을 만들었습니다.

먼저 어떤 장치를 재생할 수 있는지 선택할 수있는 방법을 생각하고 있습니다. 따라서 논리적 솔루션은 연결의 호스트를 선택하는 것입니다. GKSESSION에 서버와 클라이언트가 있습니까? 그들은 모두 동료입니까? 필요한 것을 달성하기 위해 어떤 경로를 취해야합니까?

도움이 되었습니까?

해결책

기본적으로 원하는대로 세션을 구성하는 것은 귀하에게 달려 있습니다.

Apple 문서에서 :

세션 세션이 초기화 될 때 설정된 세션 모드를 기반으로 네트워크의 다른 피어를 발견합니다. 애플리케이션은 세션을 서버로 구성 할 수 있으며, 이는 네트워크의 서비스 유형을 광고하는 서버로 구성 할 수 있습니다. 광고 서버를 검색하는 클라이언트; 또는 서버처럼 광고하고 동시에 클라이언트처럼 검색되는 피어.

서버 역할을하는 응용 프로그램 사본은 initwithSessionId : displayName : SessionMode : GKSESSIONMODESERVER 또는 GKSESSIONMODEPEER의 세션 모드를 사용하여 세션을 초기화합니다. 애플리케이션이 세션을 구성한 후 세션의 ISAVailable 속성을 YES로 설정하여 서비스를 광고합니다.

클라이언트 역할을하는 응용 프로그램 사본은 initwithSessionId : displayName : SessionMode : GKSESSIONMODECLIENT 또는 GKSESSIONMODEPEER의 세션 모드를 사용하여 세션을 초기화합니다. 세션을 구성한 후 애플리케이션은 세션의 isaavailable 속성을 YES로 설정하여 광고 서버의 네트워크를 검색합니다. 세션이 gksessionmodepeer 세션 모드로 구성된 경우 위에서 설명한대로 서버로도 광고됩니다.

따라서 gksessionmodepeer를 사용하여 세션을 초기화하는 경우 피어가 있습니다 (서버 및 클라이언트로 작용). 서버를 클라이언트와 구별하려면 gksessionmodeserver로 초기화하십시오.

친절한 안부.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top