2

当游戏控制器从系统设置配对时,一切都很好。

但我想在我的应用程序中发现和配对游戏控制器。

实际上,我发现 Apple 的文档似乎可行。 文档链接:发现并连接到控制器

我有一个正在配对的游戏控制器...

但我发现函数“ startWirelessControllerDiscoveryWithCompletionHandler”的日志永远不会显示。

似乎行为不符合。

startWirelessControllerDiscoveryWithCompletionHandler我在应用加载时调用“ ”...

我也叫“ stopWirelessControllerDiscovery”,但还是一样。

- (void)viewDidLoad {

 ...

 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(gameControllerDidConnect:) name:GCControllerDidConnectNotification object:nil];
 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(gameControllerDidDisconnect:) name:GCControllerDidDisconnectNotification object:nil];

 [GCController startWirelessControllerDiscoveryWithCompletionHandler:^{
    NSLog(@"Finished finding controllers");
    [self completionWirelessControllerDiscovery];
 }];

 ...
}

- (void)completionWirelessControllerDiscovery {
    if (isDebug) {
        NSLog(@"%s-%d", __FUNCTION__, __LINE__);
    }
}

有人有这方面的经验吗?

4

1 回答 1

1

我的经验是,它不适用于配对控制器——我总是不得不将我的游戏控制器直接与设备配对。我一直在围绕 GCController 开发一个包装器,所以我测试了大约 5 种不同的 MFi 控制器,但没有让 GCController 管理配对过程。

于 2015-11-10T22:00:30.233 回答