Нет, я не думаю, что это возможно без использования функций обратного вызова, насколько я знаю.
Обратные вызовы являются важной частью процесса сканирования.
Это код для созданияобратный вызов
private ScanCallback leScanCallback = new ScanCallback() {
@Override
public void onScanResult(int callbackType, ScanResult result) {
//code for what you want to do when a device is found
}
};
ScanResult - это структура данных, которая содержит информацию об устройстве и служебные данные, которые имеются, если таковые имеются.
Это начало сканирования
AsyncTask.execute(new Runnable() {
@Override
public void run() {
btScanner.startScan(leScanCallback);
}
});
Это остановить сканирование
AsyncTask.execute(new Runnable() {
@Override
public void run() {
btScanner.stopScan(leScanCallback);
}
});