历史记录筛选

This commit is contained in:
fengjignqi
2026-06-03 15:43:43 +08:00
parent 2507657285
commit 5089e760e5

View File

@@ -52,6 +52,7 @@ import java.util.UUID;
import no.nordicsemi.android.support.v18.scanner.BluetoothLeScannerCompat;
import no.nordicsemi.android.support.v18.scanner.ScanCallback;
import no.nordicsemi.android.support.v18.scanner.ScanFilter;
import no.nordicsemi.android.support.v18.scanner.ScanRecord;
import no.nordicsemi.android.support.v18.scanner.ScanResult;
import no.nordicsemi.android.support.v18.scanner.ScanSettings;
import pub.devrel.easypermissions.EasyPermissions;
@@ -127,52 +128,58 @@ public class AddDeviceActivity_copy extends BaseActivity<AddDeviceLayoutBinding,
*/
private void startBleScan() {
BluetoothLeScannerCompat scanner = BluetoothLeScannerCompat.getScanner();
UUID SERVICE_UUID = UUID.fromString(mUuid);
UUID SERVICE_UUID = UUID.fromString(mUuid);//1775244d-6b43-439b-877c-060f2d9bed07
ParcelUuid parcelUuid = new ParcelUuid(SERVICE_UUID);
ScanSettings settings = new ScanSettings.Builder()
.setLegacy(false)
.setScanMode(ScanSettings.SCAN_MODE_LOW_LATENCY)
.setReportDelay(5000)
.setReportDelay(0)
.build();
List<ScanFilter> filters = new ArrayList<>();
filters.add(new ScanFilter.Builder().setServiceUuid(parcelUuid).build());
Log.e("TEST", "开始扫描");
mScanCallback = new ScanCallback() {
@Override
public void onScanResult(int callbackType, @NonNull ScanResult result) {
super.onScanResult(callbackType, result);
if (result.getScanRecord() != null) {
String deviceName = result.getScanRecord().getDeviceName();
Log.e("TEST", "onScanResult: " + deviceName);
ToastUtil.showShort(mContext, "扫描到设备: " + deviceName);
}else{
Log.e("TEST", "onScanResult: " + "设备名称为空");
String deviceName = result.getScanRecord() != null ?
result.getScanRecord().getDeviceName() : "无名称";
String deviceAddress = result.getDevice().getAddress();
Log.e("TEST", "扫描到: " + deviceName + " (" + deviceAddress + ")");
ScanRecord record = result.getScanRecord();
if (record != null) {
List<ParcelUuid> uuids =
record.getServiceUuids();
Log.e("TEST", "uuids=" + uuids);
}
ToastUtil.showShort(mContext, "扫描到: " + deviceName);
}
@Override
public void onBatchScanResults(@NonNull List<ScanResult> results) {
super.onBatchScanResults(results);
Log.e("TEST", "onBatchScanResults: " + results.size() + " devices");
if (results != null && !results.isEmpty()) {
ToastUtil.showShort(mContext, "批量扫描到 " + results.size() + " 个设备");
}
Log.e("TEST", "批量结果: " + results.size() + " 个设备");
}
@Override
public void onScanFailed(int errorCode) {
super.onScanFailed(errorCode);
Log.e("TEST", "onScanFailed: " + errorCode);
Log.e("TEST", "扫描失败: " + errorCode);
ToastUtil.showShort(mContext, "扫描失败,错误码: " + errorCode);
}
};
scanner.startScan(filters, settings, mScanCallback);
scanner.startScan(null, settings, mScanCallback);
}
/**
* 初始化蓝牙适配器
*/
private void initBluetooth() {
Log.e("TEST", "initBluetooth: 开始初始化");
BluetoothManager bluetoothManager = (BluetoothManager) getSystemService(Context.BLUETOOTH_SERVICE);
if (bluetoothManager != null) {
bluetoothAdapter = bluetoothManager.getAdapter();
@@ -189,7 +196,6 @@ public class AddDeviceActivity_copy extends BaseActivity<AddDeviceLayoutBinding,
Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
} else {
Log.e("TEST", "initBluetooth: 蓝牙已开启");
bluetoothReady = true;
}
}