android129133问题根源

    xiaoxiao2021-11-29  63

    大家在开发android 的BLE一定或多或 少 129  133问题根源吧,而且几乎找不到完全解决的办法。其实原因是android内部发生了错误,这个是改不了的,也就是说你只能想办法去避免,比如延迟连接,重启手机,重启蓝牙等等。。。现在我贴出GATT的错误里面的定义大家看看。

    1. #define  GATT_ILLEGAL_PARAMETER              0x0087

    2. #define  GATT_NO_RESOURCES                  0x0080

    3. #define  GATT_INTERNAL_ERROR                0x0081

    4. #define  GATT_WRONG_STATE                    0x0082

    5. #define  GATT_DB_FULL                        0x0083

    6. #define  GATT_BUSY                          0x0084

    7. #define  GATT_ERROR                          0x0085

    8. #define  GATT_CMD_STARTED                    0x0086

    9. #define  GATT_PENDING                        0x0088

    10. #define  GATT_AUTH_FAIL                      0x0089

    11. #define  GATT_MORE                          0x008a

    12. #define  GATT_INVALID_CFG                    0x008b

    13. #define  GATT_SERVICE_STARTED                0x008c

    14. #define  GATT_ENCRYPED_MITM                  GATT_SUCCESS

    15. #define  GATT_ENCRYPED_NO_MITM              0x008d

    16. #define  GATT_NOT_ENCRYPTED                  0x008e

    解决办法总结有几个(出现此问题的都在android5.0系统,三星手机S6):

    1:重启手机(网上有很多人用这个方法)

    2:重启蓝牙(网上有很多人用这个方法)

    3:外设,在stack overflow里有国外的人用128KB的芯片代替256KB的芯片后再也没有也现此问题(由于外设工程改动较大,没有做此测试),原话如下:

    i got the same error using the TI-CC2541 Chip. The solution was to use the 128kB Chip instead of the 256kB. For instance, the "SimpleBLEPeripheral" is made for the 128kB Chip.

    4:亲测,在android6.0系统,手机为摩托罗拉,没有再出现此问题。

    5:在startScan之前,都调用一次  stopScan。

    转载请注明原文地址: https://ju.6miu.com/read-678919.html

    最新回复(0)