Nous développons une application iOS et Android qui communiquent tous les deux avec un périphérique BLE. Dans certains cas, ce périphérique renvoie une erreur et nous souhaitons utiliser des codes de statut personnalisés pour identifier et différencier les erreurs.iOS CoreBluetooth: Codes d'erreur possibles
Dans notre cas, par exemple, nous avons le code d'erreur 0x80 lorsque vous essayez d'écrire une caractéristique. Lorsque cette erreur est renvoyée, notre application Android affiche correctement une erreur avec le statut 128. Malheureusement, notre application iOS affiche une erreur inconnue.
Error Domain=CBErrorDomain Code=0 "Unknown error." UserInfo=0x15df3cd0 {NSLocalizedDescription=Unknown error.}
Nous obtenons cette erreur de la méthode normale de délégué CoreBluetooth lors de l'écriture d'une caractéristique
func peripheral(peripheral: CBPeripheral,
didWriteValueForCharacteristic characteristic: CBCharacteristic,
error: NSError?)
Dans le apple docs j'ai lu sur erreurs possibles lors d'une transaction BLE ATT. L'énumération CBATTError commence à "0x00 CBATTErrorSuccess" et se termine à "0x11 CBATTErrorInsufficientResources". Ma question est: 0x80 est-il un code d'erreur valide dans iOS lorsque vous travaillez avec des périphériques bluetooth LE ou le code d'erreur 0x80 entraîne-t-il toujours une erreur inconnue du côté iOS car il ne fait pas partie de l'énumération CBATTError?
Merci d'avance pour votre aide!
Editer: J'ai trouvé une autre question liée à ce sujet mais la réponse acceptée n'est plus possible.
Is it possible to programmatically access the error codes logged by CoreBluetooth?