ios - 通知 iOS 用户必须打开蓝牙
问题描述
我有一个在后台使用长期 BLE 扫描的应用程序。我想检测蓝牙何时关闭,以便我可以向用户发送通知,说明应用程序功能将受到限制。这可能吗?
解决方案
您可以遵守CBCentralManagerDelegate
并实施centralManagerDidUpdateState(_:)
以通知状态更改
func centralManagerDidUpdateState(_ central: CBCentralManager) {
switch central.state {
case .poweredOn:
debugPrint("Scanner powered on")
break
case .poweredOff:
debugPrint("Scanner powered off")
break
case .resetting:
debugPrint("Resetting scanner")
break
case .unauthorized:
debugPrint("Unauthorized")
case .unknown:
debugPrint("unknown")
case .unsupported:
debugPrint("Scanner not supported")
}
}
希望这可以帮助
推荐阅读
- authentication - 后端应用程序如何验证 JavaScript 框架应用程序发送的 JWT 令牌?
- python-3.x - 查找具有特定锚文本 Python / BeautifulSoup4 的所有 URL
- react-native - 当应用程序打开时,React Native Firebase 推送通知不起作用
- java - 如何对 CompletableFuture 任务执行转换
- bash - 是 for 循环还是 printf 序列更适合创建 n 个字符的字符串?
- postgresql - Postgresql - 查询 json 对象内的数组
- postgresql - 无法将 struct 元素分配为 Google/uuid 数据类型
- javascript - Kubernetes Nginx Ingress 处理 JavaScript 重定向
- sql - 从 JSON 数组字段中查找和/或删除某些元素的 PostgreSQL 查询
- c - 函数参数是相对于 rbp 的负偏移量(据我所知,它们应该是正偏移量)