gpt4 book ai didi

android - 扩展 Android 蓝牙可发现性

转载 作者:行者123 更新时间:2023-11-29 00:38:48 27 4
gpt4 key购买 nike

我正在编写一个依赖于 Android 设备(对于我当前的测试目的是 HTC Evo 4G 和几个原始的摩托罗拉 Droids)的应用程序,该设备可以通过蓝牙发现 300 秒。

我的目标是 Android 版本 2.0.1,因此根据 API,我应该能够提示用户启用最长 300 秒的可发现性。在我的 Droids 和 Evo 上,提示窗口都列出了 300 秒,但它们都在 120 秒后结束。

我用来提示用户的代码在这里:

private void makeDiscoverable() {
Intent discoverableIntent = new Intent(
BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
discoverableIntent.putExtra(
BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 300);
startActivity(discoverableIntent);
}

我确定这段代码可以运行。但是,我后来有一个处理程序,用于处理我的可发现性状态何时发生变化(我假设在这种情况下结束),内容如下:

if (isDiscoverableChange(action)) {
int discoverState = intent.getIntExtra(
BluetoothAdapter.EXTRA_SCAN_MODE, Short.MIN_VALUE);
if (isDiscoverableState(discoverState)) {
setItOrder();
setUpScanAndDisplay();
} else {
discoverScheduler.cancel();
itScheduler.cancel();
}
}

private boolean isDiscoverableChange(String action) {
return BluetoothAdapter.ACTION_SCAN_MODE_CHANGED.equals(action);
}

private boolean isDiscoverableState(int state) {
return state == BluetoothAdapter.SCAN_MODE_CONNECTABLE_DISCOVERABLE;
}

我尝试注释掉可发现模式结束时运行的部分,以防它过早取消所有内容,但可发现性确实在 120 秒后结束。

这是硬件问题,还是我做错了什么?

最佳答案

这似乎是一个错误:

问题 15486:Bluetooth Adapter.EXTRA DISCOVERABLE 未遵守 http://code.google.com/p/android/issues/detail?id=15486

问题 13361:BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION Intent Extra 不会延长 120 秒的发现间隔 http://code.google.com/p/android/issues/detail?id=13361

首次报告于 2010 年 12 月 22 日,仍列为"new"状态,因此我不希望此问题得到修复。

关于android - 扩展 Android 蓝牙可发现性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10906737/

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