2012-11-03 72 views
0

我想知道如何使用GKSession將請求從服務器發送到客戶端? 爲GKSession參考類說以下內容:如何使用GKSession將請求從服務器發送到客戶端?

- (void)connectToPeer:(NSString *)peerID withTimeout:(NSTimeInterval)timeout Parameters peerID The string that 

標識對等連接到。

超時嘗試取消連接 之前等待的時間。

討論

當你的應用程序作爲客戶端,它調用此方法 連接到可用的同行才發現。當您的應用程序 調用此方法時,會將請求發送給遠程對等方,該遠程對等方選擇是接受還是拒絕連接請求。

如果我是服務器應該使用什麼?

回答

0

作爲服務器,你讓自己可以對客戶端連接與

peer2peerSession.available = YES; 
0

下面是一個創建GKSession實例作爲服務器的例子:

[[GKSession alloc] initWithSessionID:sessionID displayName:@"Chris" sessionMode : GKSessionModeServer]; 

下面是如何創建一個示例作爲客戶端的GKSession:

[[GKSession alloc] initWithSessionID:sessionID displayName:@"Angel" sessionMode : GKSessionModeClient]; 

GKSessionModePeer將創建一個GKSession inst這既會宣告自己是一個服務器,同時也會尋找廣告服務器(換句話說就像是一個搜索服務器的客戶端)。

然後,您需要設置一個委託爲您GKSession對象,後委託需要實現以下的委託方法:

- (void)session:(GKSession *)session peer:(NSString *)peerID didChangeState : (GKPeerConnectionState)state 

在上面的方法,你會從會話,一個裝置接收消息已變得可用,變得不可用,連接等

發送一個請求:

[_session connectToPeer:peerID withTimeout:_session.disconnectTimeout]; 

要接受一個請求:

[_session acceptConnectionFromPeer:peerID error:&error]; 

有很多涉及代碼和最好的教程讓你瞭解一切就設在這裏:Simple Card Playing game using GKSession

相關問題