Allisonton
tesfen
采纳率15.4%
2016-07-04 06:28 阅读 1.2k

Android 蓝牙4.0怎么接收设备传输的数据

一直在研究Android蓝牙4.0的app,现在已经借到设备了,设备的低功耗蓝牙4.0能够连接上,但是手机Android的app连接设备之后就没了反应,我也不知道有没有在接收数据,我是在蓝牙设置界面进行的一系列修改。下面是重要的代码:

 蓝牙设置界面是个fragment,即BtSetFragment.java 在网上查到的是在GattCallback 中的onCharacteristicChanged用来接收数据,

 private final BluetoothGattCallback mGattCallback = new BluetoothGattCallback(){
     @Override
     public void onConnectionStateChange(BluetoothGatt gatt,int status,int newState){
        String intentAction;
        if(newState == BluetoothProfile.STATE_CONNECTED){
            intentionAction = ACTION_GATT_CONNECTED;
            broadcastUpdate(intentAction);
            Log.i(TAG,"Connected to GATT Server");
            Log.i(TAG,"Attemping to start service discovery:" + mBLuetoothGatt.diacoverServices());
        }else if(newState == BluetoothProfile.STATE_DISCONNECTED){
            intentAction = ACTION_GATT_DISCONNECTION;
            Log.i(TAG,"Disconnected from GATT server.");
            broadcastUpdate(intentAction);
        }
     }
     @Override
 public void onCharacteristicChanged(BluetoothGatt gatt,BluetoothGattCharacteristic characteristic){
     Log.d(TAG,"onCharacteristicChanged ,接收数据");
     broadcastUpdate(ACTION_DATA_AVAILABLE,characteristic);
 }
 };

在网上下载的蓝牙4.0的demo中的函数DeviceScanActivity.java , DeviceControlActivity.java , BluetoothLeService.java这三个函数中的主要的函数都移到了BtSetFragment.java中,不知道怎么去接收并显示接到的蓝牙设备上的数据,求各个大神

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

相关推荐