我有一个简单的问题,但我查看了Apple的文档并进行了一些搜索,但我找不到答案.
是否有可能以编程方式提取Game Center的登录视图?我有一个UIButton需要Game Center,如果客户端在应用程序打开时没有登录(iOS在启动时拉出登录视图),我想为用户提供第二次登录的机会.
我正在尝试使用自定义UI(没有GKMatchMakerViewController)实现实时多人游戏.我正在使用startBrowsingForNearbyPlayersWithReachableHandler:^(NSString*playerID,BOOL可达)来查找本地播放器,然后使用GKMatchmaker单例(我已经发起)启动匹配请求.
这是我遇到麻烦的地方.当我发送请求时,完成处理程序几乎立即触发,没有错误,并且它返回的匹配具有预期的玩家计数为零.同时,其他玩家肯定没有回应该请求
相关守则:
- (void) findMatch {
GKMatchRequest *request = [[GKMatchRequest alloc] init];
request.minPlayers = NUM_PLAYERS_PER_MATCH; //2
request.maxPlayers = NUM_PLAYERS_PER_MATCH; //2
if (nil != self.playersToInvite) {
// we always successfully get in this if-statement
request.playersToInvite = self.playersToInvite;
request.inviteeResponseHandler = ^(NSString *playerID, GKInviteeResponse response) {
[self.delegate updateUIForPlayer: playerID accepted: (response == GKInviteeResponseAccepted)];
};
}
request.inviteMessage = @"Let's Play!";
[self.matchmaker findMatchForRequest:request withCompletionHandler:^(GKMatch *match, NSError *error) {
if (error) {
// Print the error
NSLog(@"%@", error.localizedDescription);
} else
if (match != nil) { …Run Code Online (Sandbox Code Playgroud) 我正在为我制作的游戏制作多人游戏功能.
一切正常,除非我在配对中并且两个玩家都已连接,如果一个人点击"取消"按钮,则其他设备不会注意到取消.
在另一台设备上,单词更改为"Disconnected",但是没有调用任何委托方法.
我怎么处理这个?
如何从中删除邀请朋友按钮GKMatchmakerViewController?
打印其中的所有子视图时,我只看到导航栏.
我这样呈现:
GKMatchmakerViewController *mmvc = [[GKMatchmakerViewController alloc] initWithMatchRequest:request];
mmvc.matchmakerDelegate = self;
[viewController presentViewController:mmvc animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)