showBluetoothAccessoryPicker does not show up

I made up my own iAP2-BT-device, which is perfectly running by use the BT-list and the External Accessory Framework.

Now, following the instruction for MFI developers, I would like to show the showBluetoothAccessoryPicker using the following swift code:

EAAccessoryManager.shared().showBluetoothAccessoryPicker(withNameFilter: nil) { (error) in
            if let error = error {
                switch error {
                case EABluetoothAccessoryPickerError.alreadyConnected:
                    break
                default:
                    break
                }
            }
        }


Wherever I put this snipple in my app code the picker is never shown (device unpaired by "forget device") and I always get the console message: A constraint factory method was passed a nil layout anchor.  This is not allowed, and may cause confusing exceptions. Break on BOOL _NSLayoutConstraintToNilAnchor(void) to debug.  This will be logged only once.  This may break in the future.

I have no idea what to do to get this picker shown ...
Thanks for your help


Accepted Reply

Solved but not using the picker ;-)
I use auto-reconnection from the external accessory. No need to show the picker, if once connected.

Post marked as downvoted Up vote reply of PrinzAkim Down vote reply of PrinzAkim
Post marked as solved
  • It is not working for me, can you please let me know how to show list of all devices.

Add a Comment

Replies

Solved but not using the picker ;-)
I use auto-reconnection from the external accessory. No need to show the picker, if once connected.

Post marked as downvoted Up vote reply of PrinzAkim Down vote reply of PrinzAkim
Post marked as solved
  • It is not working for me, can you please let me know how to show list of all devices.

Add a Comment

For me neither… could it perhaps just be broken in modern iOS versions? When did you see it last time?

FWIW, broken since iOS13: https://stackoverflow.com/a/70823487/415982 ­– FB9856371

And still broken in iOS 17 (beta 1). So I guess the responsible developer for that has left Apple and everyone is too scared to break something so that this framework will never again be touched…