本发明涉及通信技术领域,尤其涉及一种基于ancs协议兼容多平台的通知消息获取方法。
背景技术:
ios是由苹果公司开发的移动操作系统,ios设备的通知消息只能通过applenotificationcenterservice(ancs)获取。
android是一个以linux为基础的半开源操作系统,android设备的通知消息则只能通过notificationlistenerservice获取。
因此,ios设备及android设备的通知消息不能共用一套获取方法,使得不能通过ancs协议获取android设备的通知消息,并且ios设备也不能扫描大部分的bluetoothlowenergy(ble,低功耗蓝牙技术)外围设备。
技术实现要素:
本发明所要解决的技术问题在于,提供一种基于ancs协议兼容多平台的通知消息获取方法,可使ios设备及android设备的通知消息共用一套获取方法,灵活性、适应性更强。
为了解决上述技术问题,本发明提供了一种基于ancs协议兼容多平台的通知消息获取方法,包括:
android外围设备进行广播;
所述android外围设备与ios设备建立连接以读取ios设备的通知消息,其中,所述android外围设备与ios设备建立连接以读取ios设备的通知消息的方法包括:ios设备主动连接android外围设备后,android外围设备反向连接ios设备以读取ios设备的ancs格式的通知消息;
所述android外围设备与android设备建立连接以读取android设备的通知消息,其中,所述android外围设备与android设备建立连接以读取android设备的通知消息的方法包括:android设备主动连接android外围设备后,将android设备的通知消息转换为ancs格式,再将ancs格式的通知消息发送至android外围设备。
作为上述方案的改进,所述android外围设备与ios设备建立连接以读取ios设备的通知消息的方法包括:所述ios设备主动连接android外围设备;所述android外围设备反向连接ios设备;所述android外围设备等待ios设备收到新的通知消息;所述android外围设备读取ios设备的ancs格式的通知消息。
作为上述方案的改进,所述android外围设备与android设备建立连接以读取android设备的通知消息的方法包括:所述android设备主动连接android外围设备;所述android设备等待新的通知消息;所述android设备通过notificationlistenerservice读取新的通知消息以获取android原生的notification格式的通知消息;所述android设备将android原生的notification格式的通知消息转换为ancs格式的通知消息;所述android设备将ancs格式的通知消息发送至android外围设备。
作为上述方案的改进,所述将android原生的notification格式的通知消息转换为ancs格式的通知消息的方法包括:所述android设备将android原生的notification格式的通知消息转换为二进制数据;所述android设备根据ancs协议将二进制数据封装为ancs格式的通知消息。
作为上述方案的改进,所述android外围设备为具有ble广播功能的android外围设备。
实施本发明,具有如下有益效果:
通过本发明基于ancs协议兼容多平台的通知消息获取方法,当连接不同的设备时,均能通过ancs协议获取对应设备的通知消息。其中,既可通过反向连接技术使android外围设备通过ancs协议有效读取ios设备的通知消息,也可通过格式转换技术使android外围设备通过ancs协议有效读取android设备的通知消息,从而有效地克服了现有技术中“不能通过ancs协议获取android设备的通知消息”的缺陷,灵活性、适应性更强。
附图说明
图1是本发明基于ancs协议兼容多平台的通知消息获取方法的第一实施例流程图;
图2是本发明基于ancs协议兼容多平台的通知消息获取方法的第二实施例流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。仅此声明,本发明在文中出现或即将出现的上、下、左、右、前、后、内、外等方位用词,仅以本发明的附图为基准,其并不是对本发明的具体限定。
现有技术中,ios设备的通知消息只能通过applenotificationcenterservice(ancs)获取。android设备的通知消息则只能通过notificationlistenerservice获取。因此,ios设备及android设备的通知消息不能共用一套获取方法(不能通过ancs协议获取android设备的通知消息,ios设备也不能扫描大部分的ble外围设备)。
本发明基于上述问题,提出了一种基于ancs协议兼容多平台的通知消息获取方法,当连接不同的设备(ios设备或android设备)时,均可通过ancs协议获取对应设备的通知消息(如,当连接android设备时,可通过ancs协议获取android设备的通知消息),具体地:
获取通知消息时,android外围设备进行广播,其中,所述android外围设备为具有ble广播功能的android外围设备,另外,文中出现的ios设备可以为不具有广播功能的ios设备,android设备可以为不具有广播功能的android设备。
若android外围设备需要获取ios设备的通知消息,则所述android外围设备与ios设备建立连接以读取ios设备的通知消息。其中,所述android外围设备与ios设备建立连接以读取ios设备的通知消息的方法包括:ios设备主动连接android外围设备后,android外围设备可获取ios设备的参数信息,android外围设备再根据获取的参数信息反向连接ios设备以读取ios设备的ancs格式的通知消息。
若android外围设备需要获取android设备的通知消息,则所述android外围设备与android设备建立连接以读取android设备的通知消息。其中,所述android外围设备与android设备建立连接以读取android设备的通知消息的方法包括:android设备主动连接android外围设备后,将android设备的通知消息转换为ancs格式,再将ancs格式的通知消息发送至android外围设备。
参见图1,图1显示了本发明基于ancs协议兼容多平台的通知消息获取方法的第一实施例。
所述android外围设备与ios设备建立连接以读取ios设备的通知消息的方法包括:
s101,android外围设备进行广播;
s102,ios设备主动连接android外围设备;
当ios设备连接android外围设备成功后,进入步骤s103。
s103,android外围设备反向连接ios设备;
当android外围设备反向连接ios设备成功后,进入步骤s104。
需要说明的,ios设备主动连接android外围设备后,android外围设备能有效获取ios设备的参数信息,从而使得android外围设备能根据ios设备的参数信息连接ios设备,实现android外围设备与ios设备之间的反向连接。
s104,android外围设备等待ios设备收到新的通知消息;
s105,android外围设备读取ios设备的ancs格式的通知消息。
因此,通过上述反向连接的方式,可使android外围设备通过ancs协议有效读取ios设备的通知消息,克服了现有技术中“不能通过ancs协议获取android设备的通知消息”的缺陷。
参见图2,图2显示了本发明基于ancs协议兼容多平台的通知消息获取方法的第二实施例。
所述android外围设备与android设备建立连接以读取android设备的通知消息的方法包括:
s201,android外围设备进行广播;
s202,android设备主动连接android外围设备;
当android设备主动连接android外围设备成功后,进入步骤s203。
s203,android设备等待新的通知消息;
s204,android设备通过notificationlistenerservice读取新的通知消息以获取android原生的notification格式的通知消息;
s205,android设备将android原生的notification格式的通知消息转换为ancs格式的通知消息;
具体地,所述将android原生的notification格式的通知消息转换为ancs格式的通知消息的方法包括:
所述android设备将android原生的notification格式的通知消息转换为二进制数据;
所述android设备根据ancs协议将二进制数据封装为ancs格式的通知消息。
s206,android设备将ancs格式的通知消息发送至android外围设备。
因此,通过上述方式,可将android原生的notification格式的通知消息转换为ancs格式的通知消息,从而使android外围设备通过ancs协议有效读取android设备的通知消息,克服了现有技术中“不能通过ancs协议获取android设备的通知消息”的缺陷。
由上可知,通过本发明基于ancs协议兼容多平台的通知消息获取方法,当连接不同的设备时,既可通过反向连接技术使android外围设备通过ancs协议有效读取ios设备的通知消息,也可通过格式转换技术使android外围设备通过ancs协议有效读取android设备的通知消息,从而有效地克服了现有技术中“不能通过ancs协议获取android设备的通知消息”的缺陷。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。