蓝牙BLE4.0绑定
蓝牙的绑定其实网上的方法都是大同小异的,都是用的反射的方法去绑定蓝牙设备,在API19以后,ble配对其实已经可以不用反射配对,直接bleDevice对象去用createBond,然后再在配对广播里面使用bleDevice.setPin(),输入取消 用户输入对话框的代码,但是取消用户输入框没办法,还得用反射的方式,不过有的时候反射仍然去不掉 用户输入框 这时我们在广播里面直接将配对广播屏蔽掉
public class BLEClassUtil {
private static final String TAG = "--" + BLEClassUtil.class.getSimpleName();
/**
* 取消用户输入
*
* @param bleDevice
* @return
*/
public static boolean cancelPairingUserInput(BluetoothDevice bleDevice) {
final Method cancelPairingUserInput;
boolean result = false;
try {
cancelPairingUserInput = bleDevice.getClass().getMethod("cancelPairingUserInput");
Boolean returnValue = (Boolean) cancelPairingUserInput.invoke(bleDevice);
result = returnValue.booleanValue();
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
Logger.e(TAG, "cancelPairingUserInput " + result);