处理程序可以在 android 背景中不断地 运行 吗?
Can a handler constantly run in android background?
我正在制作一个 android 应用程序,不断获取蓝牙 le rssi
private void scanLeDevice(final boolean enable) {
if (enable) {
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
if (Build.VERSION.SDK_INT < 21) {
mBluetoothAdapter.stopLeScan(mLeScanCallback);
} else {
mLEScanner.stopScan(mScanCallback);
}
}
}, 10000);
}
}
在这10秒内,我会不断获取onScanResult
信息。但我不希望这个处理程序在 10 秒后停止。我希望它 运行 永远作为后台服务。有没有老师可以帮帮我?谢谢。我应该使用 thread、asynctask、looper 还是什么。我不知道。我只是不想让这个处理程序停止。
您应该使用服务。创建您自己的扩展服务 class 的服务。在 onStartCommand 方法中,您应该初始化扫描过程并设置定期警报。
希望对你有帮助!!
我正在制作一个 android 应用程序,不断获取蓝牙 le rssi
private void scanLeDevice(final boolean enable) {
if (enable) {
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
if (Build.VERSION.SDK_INT < 21) {
mBluetoothAdapter.stopLeScan(mLeScanCallback);
} else {
mLEScanner.stopScan(mScanCallback);
}
}
}, 10000);
}
}
在这10秒内,我会不断获取onScanResult
信息。但我不希望这个处理程序在 10 秒后停止。我希望它 运行 永远作为后台服务。有没有老师可以帮帮我?谢谢。我应该使用 thread、asynctask、looper 还是什么。我不知道。我只是不想让这个处理程序停止。
您应该使用服务。创建您自己的扩展服务 class 的服务。在 onStartCommand 方法中,您应该初始化扫描过程并设置定期警报。
希望对你有帮助!!