当前位置:首页 > 技术心得 > 正文内容

Android BLE:onServicesDiscovered(BluetoothGatt gatt, int status) 没有回调过

xjtudll10年前 (2017-03-30)技术心得19280


问题:

.discoverServices()调用之后,却永远不回调onServicesDiscovered(BluetoothGatt gatt, int status)

基本代码如下:

public void onConnectionStateChange(BluetoothGatt gatt, int status, int newState) {

            String intentAction;

            if (newState == BluetoothProfile.STATE_CONNECTED) {

                intentAction = ACTION_GATT_CONNECTED;

                mConnectionState = STATE_CONNECTED;

                broadcastUpdate(intentAction);

                Log.i(TAG, "Connected to GATT server.");

                // Attempts to discover services after successful connection.

                Log.i(TAG, "Attempting to start service discovery:" +

                        mBluetoothGatt.discoverServices());

            } else if (newState == BluetoothProfile.STATE_DISCONNECTED) {

                intentAction = ACTION_GATT_DISCONNECTED;

                mConnectionState = STATE_DISCONNECTED;

                Log.i(TAG, "Disconnected from GATT server.");

                broadcastUpdate(intentAction);

            }

        }

原因:

android 提示newState == BluetoothProfile.STATE_CONNECTED

而实际上并不一定连接上了(连接成功是假象),尤其是连接一个不存在的设备。

参考资料:

http://stackoverflow.com/questions/25848764/onservicesdiscoveredbluetoothgatt-gatt-int-status-is-never-called

 

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://xjtudll.cn/Exp/447/

标签: BLEAndroid
分享给朋友:

“Android BLE:onServicesDiscovered(BluetoothGatt gatt, int status) 没有回调过” 的相关文章

OKI单片机——ML610Q4XX Melody Driver

OKI单片机——ML610Q4XX Melody Driver

配置流程: (1) Select a buzzer mode by setting the BZMD bit of the melody 0 control register (MD0CON) to “1”. (MD0CON寄存器的BZMD位置一)。 (2) Select...

气压传感器选型指南

气压传感器选型指南

文章来源:传感器视角 详细出处:http://blog.21ic.com/user1/6459/archives/2010/68599.html 在我给客户做技术的工作当中,经常遇到客户问到这样的问题,"目前市场上气压传感器都各有什么优势?""我们应该如何去选型?&...

Keil WARNING L16: UNCALLED SEGMENT……解决

Keil WARNING L16: UNCALLED SEGMENT……解决

Keil默认情况下会给所有的代码分配使用空间的,如果某些函数没被调用过,Keil则会给出警告 Warning L16:Uncalled Function(Segment),Ignored For Overlay Process。 这个警告本身不关键,关键是不使用的函数居然占用了ROM。如何解决这个...

BOS审批流如何查询出下一级待审核人信息

--根据名称查询出采购订单的类型ID,为1071 SELECT FID,* FROM ICClassType WHERE FName_chs Like '%采购订单_BOS%' --审批流对应的审核状态表的组合规则为:ICClassMCStatus+单据类型ID,审核记录表组合规则为:ICClass...

SQL Server 树形递归查询

SQL Server 树形递归查询

原始查询 原始表格查询: select * from dbo.T_DeptInfo; 原始表格查询结果:: 递归查询 递归查询结果 带缩进的的树形递归查询 缩进递归查询结果 查询是否子节点的树形递归查询 树形递归查询是否包含子节点的查询结果...

CC254x android6.x无法配对

参考资料: https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/t/457958 问题: 配对时提示密码或PIN错误,但是根本就没有到输入密码这一步,就直接说密码错误了。 环境: android 6....

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。