我写了一个小应用程序,打开BT发现120秒 它可以在许多设备上完美运行,例如:galaxy 6s(5.0.1)和galaxy 6s(6.0.1)以及Meizu mx4,onePlus 1和更多, - 除了所有nexus设备,他们有android版本6.0.1-- 这是代码 -
Intent discoverableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
discoverableIntent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION,120);
startActivity(discoverableIntent);
我将这些权限添加到清单
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.BLUETOOTH" />
为什么它只能在Nexus设备上使用?
答案 0 :(得分:0)
如果您运行的Android版本是Android 6.x,我相信您需要为清单添加ACCESS_COURSE_LOCATION权限。例如:
要通过蓝牙和Wi-Fi扫描访问附近外部设备的硬件标识符,您的应用现在必须具有ACCESS_FINE_LOCATION或ACCESS_COARSE_LOCATION权限