我正在使用 EAWiFiUnconfiguredAccessoryBrowser 来检测 EAWiFiUnconfiguredAccessory。启动配件搜索的代码如下:
- (void)viewDidLoad {
[super viewDidLoad];
if (_accessories == nil) {
_accessories = [[NSMutableArray alloc] init];
}
if (_browser == nil) {
_browser = [[EAWiFiUnconfiguredAccessoryBrowser alloc] initWithDelegate:self queue:nil];
_browser.delegate = self;
}
}
不幸的是,它只在首次加载视图时找到附件。如果我返回到上一个视图,然后重新加载视图,它就无法找到它们。
我尝试过:
- 重新创建浏览器附件并重新启动搜索(不起作用)
- 停止搜索并重新启动它(不起作用)
这是我得到的最新代码(请参考上面的代码):
- (void) viewWillAppear:(BOOL)animated{
NSLog(@"view will appear");
if (_accessories != nil) {
[_accessories removeAllObjects];
}
[self.tableView reloadData];
[self initializeBrowswerAndStartSearch];
}
- (void) initializeBrowswerAndStartSearch{
if (_browser != nil) {
[_browser stopSearchingForUnconfiguredAccessories];
}
[_browser startSearchingForUnconfiguredAccessoriesMatchingPredicate:nil];
}
- (void) viewWillDisappear:(BOOL)animated{
[_browser stopSearchingForUnconfiguredAccessories];
}
看起来配件列表信息在APP中的某个地方被缓存了。如果我重新启动APP,它就会找到它们,所以我想我可能错过了什么。
需要帮助吗?