首页 > 解决方案 > 如何在锁定屏幕的背景下运行蓝牙 Le 扫描

问题描述

在 iOS 上,在后台模式下(例如关闭屏幕)我想每 30 分钟进行一次蓝牙扫描,以获取来自蓝牙 LE 设备的广告数据。

在 Visual Studio 中,在 info.plist 文件中,我激活了“启用后台模式”以能够运行后台进程,然后“使用蓝牙 LE 附件”,但我不知道该怎么做......

我也尝试过使用“后台获取”,但这仅在 iOS 需要时才会提出......所以它不适合我的需要。

public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
{
    UIApplication.SharedApplication.SetMinimumBackgroundFetchInterval(UIApplication.BackgroundFetchIntervalMinimum);
    return true;
}
public override void PerformFetch(UIApplication application, Action<UIBackgroundFetchResult> completionHandler)
{
    //do job
    completionHandler(UIBackgroundFetchResult.NewData);
}

步骤再现

1.打开我的应用

2.锁屏

3.30分钟后,应用程序(在服务中)进行扫描并从蓝牙LE广播数据中获取数据

预期结果:从我的 BluetoothLe 设备获取广告数据(没有连接)

标签: c#iosvisual-studioxamarin

解决方案


推荐阅读