gpt4 book ai didi

android - BluetoothAdapter.getDefaultAdapter() 不返回 null

转载 作者:太空狗 更新时间:2023-10-29 12:42:08 27 4
gpt4 key购买 nike

这是我的第一篇文章,所以如果我做了一些愚蠢的事情,请告诉我。这个问题可能看起来与其他帖子相似,但或多或​​少与我所看到的一切相反。

关于项目的事情:

  • 我正在开发 android 4.0 - 4.4 应用程序。
  • 我正在使用蓝牙
  • 我正在运行 android 4.2 的物理设备 (Eken Necnon) 上进行测试
  • 该设备没有蓝牙硬件

我遇到的问题是,当我尝试使用 BluetoothAdapter.getDefaultAdapter() 获取蓝牙适配器时,它应该返回 null 但事实并非如此。

BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();

if (mBluetoothAdapter == null) { // This does not ever return true.
Log.w("Bluetooth", "Initializing bluetooth device failed: Bluetooth not supported.");
return;
}

if (!mBluetoothAdapter.isEnabled()) {
mBluetoothAdapter.enable();
}

while (mBluetoothAdapter.getState() != BluetoothAdapter.STATE_ON) {
try {
Log.d(TAG, "Waiting for bluetooth adapter to turn on, taking nap.");
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}

最佳答案

这似乎是一个特定于设备的问题。或者,您可以使用 PackageManager 来确定是否支持蓝牙。

PackageManager pm = context.getPackageManager();
boolean hasBluetooth = pm.hasSystemFeature(PackageManager.FEATURE_BLUETOOTH);

在访问相应的 API 之前,检查哪些系统功能受支持始终是一个好习惯。

关于android - BluetoothAdapter.getDefaultAdapter() 不返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24087445/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com