首页 > 解决方案 > BLE Xamarin Android

问题描述

我正在尝试创建概念证明以找到附近的蓝牙低功耗设备。这是我的尝试:

 public async void StartScan()
        {

            BluetoothAdapter adapter = BluetoothAdapter.DefaultAdapter;
            adapter.Enable();
            await Task.Delay(TimeSpan.FromMinutes(1)); // rode that this my help but didn't
            if (adapter == null) return;
            BluetoothLeScanner scanner = adapter.BluetoothLeScanner;
            scanner?.StartScan(_callback);
        }

回调类:

 public class MyScanCallback : ScanCallback
    {
        public override void OnBatchScanResults(IList<ScanResult> results)
        {
            base.OnBatchScanResults(results);
        }

        public override void OnScanResult(ScanCallbackType callbackType, ScanResult result)
        {
            base.OnScanResult(callbackType, result);
        }

        public override void OnScanFailed(ScanFailure errorCode)
        {
            base.OnScanFailed(errorCode);
        }
    }

我花了一些时间在互联网上寻找,但每个解决方案总是给我同样的错误。每次执行代码时,它都会进入带有枚举参数 ApplicationRegistrationFailed 的 OnScanFailed 方法。

有没有人面临同样的问题?

PS。我已经添加了必需的权限。

标签: androidxamarin.androidbluetooth-lowenergy

解决方案


推荐阅读