我需要在android中找到蓝牙mac地址。代码
BluetoothAdapter.getDefaultAdapter().getAddress();
它适用于18级及以下的api。
如何使用api level 19找到相同的内容。?
"要获得代表本地蓝牙适配器的BluetoothAdapter,在JELLY_BEAN_MR1及以下版本上运行时,请调用静态getDefaultAdapter()方法;当在JELLY_BEAN_MR2及更高版本上运行时,使用BLUETOOTH_SERVICE"通过getSystemService(String)检索它。来自http://developer.android.com/reference/android/bluetooth/BluetoothAdapter.html
我收到以下错误:
bluetooth binder is null
同时
BluetoothManager ba=(BluetoothManager)getSystemService(Context.BLUETOOTH_SERVICE);
bmac=ba.getAdapter().getAddress();
和
bmac=BluetoothAdapter.getDefaultAdapter().getAddress();
在模拟器和genymotion模拟器上用于api level 19,kitkat
帮助!
答案 0 :(得分:1)
据我所知,默认情况下,标准模拟器和genymotion都不支持蓝牙(有传言称genymotion支持蓝牙)。您可以在基于VirtualBox的模拟器which is described here上启用蓝牙,但我没有尝试过。
从静态方法BluetoothAdapter.getDefaultAdapter()
检索BluetoothAdapter对所有平台都是正确的。可以从API 18获得BluetoothManager。