gpt4 book ai didi

java - 如何避免调用 handler.postDelayed(Runnable run) ?

转载 作者:行者123 更新时间:2023-11-30 01:45:11 24 4
gpt4 key购买 nike

我有这种方法来扫描蓝牙 LE 设备。扫描器异步运行10s,然后中断。

 public void startScanning() {
Handler handler = new Handler();

final long SCAN_PERIOD = 10000;
handler.postDelayed(new Runnable() {
@Override
public void run() {
btScanner.stopScan(leScanCallback);
}
}, SCAN_PERIOD);
btScanner.startScan(leScanCallback);
}

但是,根据扫描期间验证的条件(例如,我找到了我正在寻找的设备等),我调用 btScanner.stopScan(leScanCallback)。所以我不想在 SCAN_PERIOD 之后调用 stopScan,否则我会调用它两次。如何避免第二次调用?

最佳答案

尝试删除回调:

handler.removeCallbacksAndMessages(null);

关于java - 如何避免调用 handler.postDelayed(Runnable run) ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58341312/

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