iOS对于ANCS设备的处理

如题所述

第1个回答  2022-07-15

ANCS是Apple Notification Center Service的简称,中文为苹果通知中心服务。
ANCS是苹果让周边蓝牙设备(手环、手表等)可以通过低功耗蓝牙访问IOS设备(iphone、ipad等)上的各类通知提供的一种简单方便的机制。

ANCS是基于BLE协议中的通用属性协议(Generic Attribute Profile,GATT)协议实现的,他是GATT协议的一个子集。在ANCS协议中,IOS设备作为gatt-server,而周边设备作为gatt client来连接和使用server提供的其他services。

详细的可以参考官网上的解释 ANCS spec

目前iOS这边关于蓝牙的开发大多都是基于Ble来实现的,对连接断开有较深使用经验的人都知道,iOS蓝牙这边的Ble关于断连重新连接模块都是用的懒加载(再次连上同一个mac地址的ble设备,底层没有重新获取特征值,只是从缓存里读了一份给到上层)

所以ANCS带来的影响是:

既然无法断开,那就意味着一旦连上了就无法让别的手机去搜索到,而且杀死当前连上的应用后,也无法通过常规的手段( centerManager.scanForPeripherals(withServices: nil, options: nil) )去搜索到设备。

以下提供了一个demo来感受一下整个过程:

运行起来:

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网