Не удается найти подключенный аксессуар, если EAAccessoryManager.shared() вызван в конструкторе AppDelegate
Если я вызываю EAAccessoryManager.shared() внутри конструктора AppDelegate, например,
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var accessoryManager = EAAccessoryManager.shared()
...
func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
return true
}
...
}
Затем позже я получаю доступ к диспетчеру аксессуаров, чтобы получить подключенные аксессуары (с подключенным аксессуаром) EAAccessoryManager.shared(). ConnectedAccessories.count возвращает 0, что неверно.
Если я не вызываю EAAccessoryManager.shared() в конструкторе AppDelegate, то EAAccessoryManager.shared(). ConnectedAccessories.count возвращает 1, что является правильным.
Я могу обойти эту проблему, но я действительно хотел понять, почему это может происходить, так как я мог неправильно понять, как работает EAAccessoryManager (или, возможно, что-то более фундаментальное в том, как инициализируется приложение - я новичок в iOS программирование).
Кто-нибудь сталкивался с этой проблемой раньше, или, может быть, есть идея, почему это может происходить?