作者推荐内容 | iMessage苹果推软件 *** 点击即可查看作者要求内容信息 |
---|---|
作者推荐内容 | 1.家庭推内容 *** 点击即可查看作者要求内容信息 |
作者推荐内容 | 2.相册推 *** 点击即可查看作者要求内容信息 |
作者推荐内容 | 3.日历推 *** 点击即可查看作者要求内容信息 |
作者推荐内容 | 4.虚拟机安装简单 *** 点击即可查看作者要求内容信息 |
作者推荐内容 | 5.iMessage *** 点击即可查看作者要求内容信息 |
依靠 ANCS的利用没有依赖,它是GATT的一个子集,任何一个实现了GATT client的装备可以或许便利的从ios设备得到关照信息。 传输注意事项 若是没有特别阐明,经由过程ANCS传输的数值均使用小端形式。 如果没有特殊说明,通过ANCS传输的字符串均使用UTF-8编码。 The maximum length of an attribute value shall be 512 octets. 观点界说 l ANCS:苹果通知中间办事 l NP(Notification Provider):通知的发生者,一样平常是ios设备 l NC(Notification Consumer):通知的消费者,一般是蓝牙设备 l iOS notification:ios设备里呈现的通知 l GATT notification:GATT characteristic发送的通知 Service定义 ANCS使用了一个公有UUID作为其Service的UUID: 7905F431-B5CE-4E99-A40F-4B1E122D00D0 NP上只要一个ANCS实例,基于ios的机制
ANCS没有法子包管不停运转。 以是NC必要搜刮而且监听(subscribe)Service Changed characteristic,以保证能够坚硬到全部通知。 (怎样做。。。。Service Changed characteristic是啥) Characteristic范例 所涉及的characteristic 1、Notification Source: UUID 9FBF120D-6301-42D9-8C58-25E699A21DBD(notifiable) 根本通知源,通知一些计数的信息;
2、Control Point: UUID 69D1D8F3-45E1-49A8-9821-9BBDFDAAD9D9(writeablewithresponse) 节制器,用于向ios设备写入控制信息,比方读取详情; 3、Data Source: UUID 22EAC6E9-24D6-4BB5-BE44-B36ACE7C7BFB(notifiable) 数据源,用于供给细致数据,在控制信息写入后通过此characteristic返回; 另有很多其余characteristic,不外只有Notification Source是逼迫的,其他的都是可选的。 Notification Source 通知信息更新时,从NP发给NC的动静。
有以下一些环境: l 新的ios通知到来; l ios通知有窜改; l ios通知移除; 技能分享 l EventID:消息类型,增加(0)、点窜(1)、删除(2); l EventFlags:消息优先级,寂静(1)、紧张(2); l CategoryID:消息类型; l CategoryCount:消息计数; l NotificationUID:通知ID,可以通过此ID获取详情; Notification的生命周期如下: 技术分享 Get Notification Attributes 当NC但愿从NP读取Notification的详细信息时,它需要向Control Point characteristic发送一些号令,格局如下: 技术分享 l CommandID:设为0; l NotificationUID:对应Notification Source中雷同名字的字段; l AttributeIDs:NC希望读取的变量ID列表,有些变量大概需要跟一个16bit的数说明想要的最大长度; NP接管到此命令后,会通过Data Source characteristic将成果返回(通过GATT Notification),所以你需要监听这个参数。
此命令收回后对应的返回信息如下: 技术分享 l CommandID:为0; l NotificationUID:对应以前哀求的UID; l AttributeList:盘问结果列表,每一项的格式都是:ID/16bit Length/Value,每一个attribute都是一个字符串,其长度由Length指定,可是此字符串不是以NULL末端。若找不到对应的Attribute,则Length为0; * 如果返回的消息长度大于GATT最大传输长度(MTU),则其会被朋分成多个分段。
蓝牙设备必需将这些分段组装起来。当所有请求属性的内容都接收完成后,此进程才算完成; Get App Attributes 此命令容许NC读取NP上安置app的特定属性,它需要向Control Point characteristic发送一些命令,格式如下: 技术分享 l CommandID:设成1; l AppIdentifier:App ID,这个字符串必须使用NULL结尾(“\0”吧); l AttributeIDs:希望获得属性的列表; 此命令的相应消息格式如下: 技术分享 l CommandID:为1; l AppIdentifier:App ID,与之前的请求ID对应; l AttributeList:属性值列表,每一个格式都是:ID/16-bit Length/Value,每个attribute都是一个字符串,其长度由Length指定,但是此字符串不是以NULL结尾。若找不到对应的Attribute,则Length为0; * 对于分段以及传输竣事的果断尺度
与Get Notification Attributes同等; Session(会话) ANCS session 在NC定阅Notification Source以后起头,在取缔订阅大概毗连断开之后结束。因为ANCS不是一个彻底同步的服务,它不会在会话中记实状况。所以,所有的NotificationUID以及AppIdentifier仅在某个特定的会话周期内有用。(换句话说,那些ID只是在会话后开始的计数,下次再连接从新计数) 当某个会话结束时,NC需要清空所有ID以及数据内容。