微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > CC2564MODN的notify通知问题!

CC2564MODN的notify通知问题!

时间:10-02 整理:3721RD 点击:

开发Android手机APP和CC2564MODN通信,已经获取到服务,下面是一个单击按钮事件,负责发送notify属性变化通知,但是调用setCharacteristicNotification()之后,并没有进入回调函数onCharacteristicChanged(),请问这是为何?

public void onBtTest(View view ){
	
	BluetoothGattService service = mBluetoothGatt.getService(UUID.fromString("53455206-444C-5020-4E49-52204E616E6F"));
	if(service == null)
	{
		Log.i("get service", "not find!");
	}       
	BluetoothGattCharacteristic characteristic = service.getCharacteristic(UUID.fromString("4348411D-444C-5020-4E49-52204E616E6F"));
	if(characteristic == null)
	{
		Log.i("get charateristic", "not find!");
	}

	if(characteristic != null)
	{
		Log.i("测试notify 属性!", "characteristic");
		BluetoothGattDescriptor descriptor = characteristic.getDescriptor(UUID.fromString("00002902-0000-1000-8000-00805f9b34fb"));
		descriptor.setValue(BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE);
		mBluetoothGatt.writeDescriptor(descriptor);
	}
	
	mBluetoothGatt.setCharacteristicNotification(characteristic, true);
	Log.i("notify 属性!", "返回notify属性!");
}

应该进入的回调函数,但实际没有进入!(想不明白怎么回事)

		public void onCharacteristicChanged(BluetoothGatt gatt,	BluetoothGattCharacteristic characteristic)
		{Log.i(TAG, "这里是notify特性的数据接收,回调此方法");broadcastUpdate(ACTION_DATA_AVAILABLE, EXTRA_NOTIFY_DATA,characteristic);
		}

 

bin,

空中抓包可以看一下吗?确认一下你的characteristic操作的handle的正确性。

谢谢您的回答!我是首次接触蓝牙BLE通信,现在是用Java写的程序部署到Android手机上,我理解的是获取到服务后就可以利用不同的characteristic属性值发送相应的指令,所以不是太明白您所说的空中抓包是怎么回事!麻烦您能详细说明一下吗?谢谢。

上一篇:AES128 加密
下一篇:SENSORTAG 韧体疑问

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top