ios - tarjetas - programar etiquetas nfc
EAAccessoryDidConnectNotification no se activa hasta que se llame al bloque de finalizaciĆ³n del selector de accesorios Bluetooth (0)
Recientemente comencé a usar el método EAAccessoryManager
showBluetoothAccessoryPickerWithNameFilter
para conectarme a nuestro accesorio de bluetooth MFI (si no está ya conectado) cuando se inicia nuestra aplicación. Me estoy encontrando con el siguiente escenario:
- El accesorio está apagado
- El usuario inicia la aplicación
- Se muestra el selector de accesorios
- El usuario enciende un accesorio (que se ha emparejado previamente y, por lo tanto, vuelve a conectar)
- El selector de accesorios sigue
EAAccessoryDidConnectNotification
y la aplicación no recibeEAAccessoryDidConnectNotification
hasta que el usuarioEAAccessoryDidConnectNotification
el selector de accesorios presionando "Cancelar".
En la situación que he explicado anteriormente, aunque estamos conectados al accesorio definido por nuestro NSPredicate
, el selector se NSPredicate
y no recibimos ninguna notificación de que el accesorio se haya conectado hasta que se llame al bloque de finalización del selector. El usuario está atascado en el limbo.
Estamos ejecutando iOS 7.1.1 y hemos probado contra 7.1 y 7.0.
Cualquier ayuda sería apreciada. Aquí hay algunos registros que muestran lo que estoy viendo:
2014-04-28 12:03:48.028 App[508:60b] BTM: attaching to BTServer
2014-04-28 12:03:48.262 App[508:60b] BTM: setting pairing enabled
2014-04-28 12:03:55.578 App[508:60b] BTM: attempting to connect to service 0x00000001 on device "Accessory-10" 00:07:80:79:92:8D
2014-04-28 12:03:55.966 App[508:60b] BTM: connection to service 0x00000001 on device "Accessory-10" 00:07:80:79:92:8D succeeded
2014-04-28 12:03:55.991 App[508:60b] BTM: attempting to connect to service 0x00000080 on device "Accessory-10" 00:07:80:79:92:8D
2014-04-28 12:03:56.024 App[508:60b] BTM: connection to service 0x00000080 on device "Accessory-10" 00:07:80:79:92:8D succeeded
2014-04-28 12:04:06.845 App[508:60b] BTM: setting pairing disabled
2014-04-28 12:04:06.847 App[508:60b] BTM: disabling device scanning
2014-04-28 12:04:06.856 App[508:60b] __46-[LoginViewController selectBluetoothDevice]_block_invoke Error: Error Domain=EABluetoothAccessoryPickerErrorDomain Code=2 "The operation couldn’t be completed. (EABluetoothAccessoryPickerErrorDomain error 2.)"
2014-04-28 12:04:06.928 App[508:60b] EAAccessoryDidConnectNotification
2014-04-28 12:04:06.935 App[508:60b] Accessory connected!