Android获取蓝牙地址
Android 6.0以下的版本
直接使用bluetoothadapter.getaddress()
Android 6.0以上
private String getBluetoothAddress(BluetoothAdapter adapter) {
if (adapter == null) {
return null;
}
Class<? extends BluetoothAdapter> btAdapterClass = adapter.getClass();
try {
Field mServiceField = adapter.getClass().getDeclaredField("mService");
mServiceField.setAccessible(true);
Object btManagerService = mServiceField.get(adapter);
if (btManagerService != null) {
return (String) btManagerService.
getClass(.getMethod("getAddress").invoke(btManagerService);
} else {
return null;
}
} catch (Exception e) {
e.printStackTrace();
LogWriter.writeLog(TAG, e.getMessage());
return null;
}
}
PS:有的手机需要在蓝牙已经打开的时候才能获取到