+ All Categories
Home > Documents > Mobile Application Programming - The College of ...cs4530/2010ios/media/GameKit (PDF).pdf ·...

Mobile Application Programming - The College of ...cs4530/2010ios/media/GameKit (PDF).pdf ·...

Date post: 26-May-2018
Category:
Upload: lamdiep
View: 215 times
Download: 0 times
Share this document with a friend
11
Mobile Application Programming GameKit
Transcript

Mobile Application ProgrammingGameKit

GameKit

Peer-to-Peer Connectivity

Asynchronous Communication

Guaranteed or Non-Guaranteed Delivery

Initial Connection UI

In-Game Voice

Peers

Communication

Need a Protocol

Serialization Protocols

NSKeyedArchiver NSKeyedUnarchiver

NSCoding compliant

NSCoding compliant

GKSession

Sending / Receiving Data- (BOOL) sendData:(NSData*)data

toPeers:(NSArray*)peers withDataMode:(GKSendDataMode)mode error:(NSError**)error

- (void) setDataReceiveHandler:(id)handlerwithContext:(void *)context

- (void) receiveData:(NSData *)data fromPeer:(NSString *)peer inSession: (GKSession *)session context:(void *)context;

In-Game Voice

System Singleton

Your object implementing

protocol

General Overview

GameKit Programming Guide

In-Game Voice

GKSession Bluetooth Internet with Sockets

GameKit Programming Guide

GameKit Programming Guide

Configure AVAudioSession singleton for playback and record

Implement 2 GKVoiceChatClient protocol methods

- (NSString*) participantID

- (void) voiceChatService:(GKVoiceChatService*)voiceChatService sendData:(NSData*)data toParticipantID:(NSString*)participantID

Implement GKSession data receive handler

- (void) receiveData:(NSData*)data fromPeer:(NSString*)peer inSession: (GKSession*)session context:(void*)context

Set GKVoiceChatService system singleton client

[[GKVoiceChatService defaultVoiceChatService] setClient:clientObject];

Initiate voice chat session

[[GKVoiceChatService defaultVoiceChatService] startVoiceChatWithParticipantID:otherPeerID error:nil];

GameKit Programming Guide


Recommended