低功耗蓝牙开发对象按着android的API文档来一个一个对象获取就通了
http://www.android-doc.com/reference/android/bluetooth/package-summary.html
创建第一个对象
BluetoothManager
这个对象在activity的系统服务中
activity.getSystemService(Context.BLUETOOTH_SERVICE)
拿到后就是BluetoothAdapter,这个对象就在BluetoothManager中,按照命名就可以看出调用
getAdapter方法
然后就是获取BluetoothDevice对象这个就找文档中从BluetoothAdapter可以返回的方法
接下来就是BluetoothGatt对象这个对象就是通讯中重要的东西了,当然是从BluetoothAdapter对象中获取的
connectGatt(Context context, boolean autoConnect,BluetoothGattCallback callback)
这三个参数,第一个context 这个从activity得到的,autoConnect就是自动连接,true就是蓝牙断开后会自动尝试链接.callback这个就是蓝牙通讯中的各个回调对象,一个BluetoothGatt对应一个BluetoothGattCallback对象,不嫌代码看着难受直接new一个就可以了,回调直接在这儿对象中处理.
BluetoothGattService这个对象的获取要按照套路来
在onConnectionStateChange蓝牙连接成功的回调中发现一下调用BluetoothGatt对象的discoverServices方法
去触发onServicesDiscovered回调,然后BluetoothGattService和BluetoothGattCharacteristic就可以直接在回调里获取了
不然老是告诉你空指针