Suddenly rvictl -s 0000... started to fail. The solutions proposed in this thread didn't help. Please advice. Due to the nature of the APP I worked on it I heavily depend on rvictl to work properly.
MacBook Pro (15-inch, 2018)
Big Sur 11.6 (20G165)
iPhone 12, iOS 15.1
Post
Replies
Boosts
Views
Activity
Now that ImageCaptureCore framework is supported on iOS 13+, I was trying to write an application for browsing media files on devices connected via USB. The external device is connected to the iPhone via the "Lightning to USB 3 Camera Adapter" - https://www.apple.com/shop/product/MK0W2AM/A/lightning-to-usb-3-camera-adapter.
The iOS application I'm writing is based on SimpleCameraBrowser - https://developer.apple.com/library/archive/samplecode/SimpleCameraBrowser/Introduction/Intro.html
@interface AppDelegate () <ICDeviceBrowserDelegate, ICDeviceDelegate>
@property (nonatomic, strong) ICDeviceBrowser *deviceBrowser;
@property (nonatomic, strong) ICCameraDevice *camera;
@end
@implementation AppDelegate
(void)deviceBrowser:(nonnull ICDeviceBrowser *)browser didAddDevice:(nonnull ICDevice *)device moreComing:(BOOL)moreComing {
NSLog( @"deviceBrowser:didAddDevice:moreComing: \n%@\n", device );
// if (device.type & ICDeviceTypeCamera)
{
device.delegate = self;
			 self.camera = (ICCameraDevice *)device;
self.camera.delegate = self;
[self.camera requestOpenSession];
}
}
(void)device:(nonnull ICDevice *)device didOpenSessionWithError:(NSError * _Nullable)error {
NSLog( @"device:didOpenSessionWithError:error: \n%@\n", error );
}
(void)deviceDidBecomeReady:(ICDevice*)device {
ICCameraDevice *camera = (ICCameraDevice *)device;
NSLog(@"%@, %@", device, camera.mediaFiles);
}
(void)deviceDidBecomeReadyWithCompleteContentCatalog:(ICCameraDevice*) device {
	 NSLog(@"deviceDidBecomeReadyWithCompleteContentCatalog: %@", device.mediaFiles);
}
(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
self.deviceBrowser = [[ICDeviceBrowser alloc] init];
self.deviceBrowser.delegate = self;
[self.deviceBrowser start];
return YES;
}
What I'm seeing is that although the camera is found and successfully open a session, when receiving the callback deviceDidBecomeReady, the property mediaFiles is an empty array and never receive the call deviceDidBecomeReadyWithCompleteContentCatalog.
Is ImageCaptureCore framework supposed to work on iOS? Does it work only on iPads and not on iPhones?
Altough we are using NEHotspotConfiguration API to configure the current Wi-Fi network, occasionally CNCopyCurrentNetworkInfo returns NULL. The only way to recover was rebooting the phone (I haven't tried resetting the network settings as was suggested else where). Regardless ,this sounds like a bug in the API and I was wondering if others see the same problem and/or if it's a known issue and is getting addressed.Thanks!