1

We are using ICDeviceBrowser to find the camera devices connected to a Mac system and it runs ok in macOS 12 but the delegate is never called and the device array is always empty in macOS 13.

@interface NKDeviceBrowser () < NKDeviceBrowserDelegate, ICDeviceBrowserDelegate>

{


-(void)startICDeviceBrowser

{
  NSLog(@"CALL [ %@ ]", NSStringFromSelector(_cmd));

  if ((_browsedDeviceTypeMask & NkDeviceLocationTypeBonjour)) {
    mDeviceBrowser = [[ICDeviceBrowser alloc] init];

    mDeviceBrowser.delegate = self;

    mDeviceBrowser.browsedDeviceTypeMask = (ICDeviceTypeMask)(ICDeviceLocationTypeMaskLocal|ICDeviceTypeMaskCamera|ICDeviceLocationTypeBonjour);

    [mDeviceBrowser start];

  }

}



-(void)deviceBrowser:(ICDeviceBrowser*)browser didAddDevice:(ICDevice*)addedDevice moreComing:(BOOL)moreComing

{
  NSLog(@"CALL [ %@ ]", NSStringFromSelector(_cmd));

  if ( addedDevice.type & ICDeviceTypeCamera ) {
    NSLog(@"Added Device Name %@",addedDevice.name);

    if ([_delegate respondsToSelector:@selector(deviceBrowser:didAddDevice:moreComing:)]) {
      

      [_delegate deviceBrowser:self didAddDevice:addedDevice moreComing:moreComing];

    }

  }

}

}

Its working fine till macOS 12 but not working in macOS 13.

Willeke
  • 14,578
  • 4
  • 19
  • 47

0 Answers0