定位地理位置的方法及电子设备转让专利

申请号 : CN202111604977.0

文献号 : CN115022943B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈天鹏

申请人 : 荣耀终端有限公司

摘要 :

本申请提供了一种定位地理位置的方法及电子设备,涉及计算机技术领域。采用本申请中的方法,检测到目标地理围栏中的生效时间围栏触发后,注册目标地理围栏中的生效地理围栏,若检测到目标地理围栏中的生效时间围栏触发,则确定该目标地理围栏触发,该目标地理围栏触发指示电子设备位于目标区域内。本申请的方法优化了电子设备中地理围栏的准确性,减小了地理围栏的功耗。

权利要求 :

1.一种定位地理位置的方法,其特征在于,应用于电子设备,所述电子设备注册有目标地理围栏和第一出行应用的PUSH围栏,所述方法包括:检测所述目标地理围栏中的生效时间围栏是否触发,所述生效时间围栏触发用于指示达到预设的注册生效地理围栏的时间;

若检测到目标地理围栏中的生效时间围栏触发,则注册目标地理围栏中的生效地理围栏;

在注册目标地理围栏中的生效地理围栏后,检测目标地理围栏的生效地理围栏是否触发,若检测到目标地理围栏的生效地理围栏触发,则确定所述目标地理围栏触发,所述目标地理围栏的生效地理围栏触发用于指示所述电子设备的位置处于目标区域内;

在所述确定所述目标地理围栏触发之后,所述方法还包括:

检测第一出行应用的PUSH围栏是否触发,所述第一出行应用的PUSH围栏触发用于指示所述电子设备接收到所述第一出行应用的服务器发送的PUSH消息;

若检测到所述第一出行应用的PUSH围栏触发,则判断是否显示当前场景的出行提醒;

若确定显示当前场景的出行提醒,则显示所述当前场景的出行提醒。

2.根据权利要求1所述的方法,其特征在于,所述检测所述目标地理围栏中的生效时间围栏是否触发之前,所述方法还包括:获取用户的行程数据;

根据行程数据和各出行的场景,注册各场景的所述目标地理围栏的生效时间围栏。

3.根据权利要求1所述的方法,其特征在于,所述注册目标地理围栏中的生效地理围栏,包括:根据当前出行的场景,从所述出行数据中获取当前出行的场景对应的目标位置;

根据所述目标位置,注册当前出行的场景的所述生效地理围栏,所述生效地理围栏的目标区域为所述目标位置所在区域。

4.根据权利要求1至3中任一项所述的方法,其特征在于,在注册所述目标地理围栏之前,所述方法还包括:获取用户的行程数据;

根据用户的行程数据和各出行的场景,注册当前场景的目标围栏,所述当前场景的目标围栏包括所述目标地理围栏。

5.根据权利要求4所述的方法,其特征在于,在所述确定显示当前场景的出行提醒之后,所述方法还包括:根据触发的围栏,解除当前场景的目标围栏或忽略下一次获取的当前场景的PUSH消息。

6.根据权利要求5所述的方法,其特征在于,所述判断是否显示当前场景的出行提醒,包括:若检测到当前场景的目标围栏触发,则确定显示所述当前场景的出行提醒;

若检测到所述第一出行应用的PUSH围栏触发,则解析接收的PUSH消息,判断所述PUSH消息中是否存在当前场景的PUSH消息;

若确定获取到所述当前场景的PUSH消息,则确定显示当前场景的出行提醒;

若确定未获取到所述当前场景的PUSH消息,则确定取消显示当前场景的出行提醒。

7.根据权利要求5所述的方法,其特征在于,所述根据触发的围栏,解除当前场景的目标围栏或忽略下一次获取的当前场景的PUSH消息,包括:若确定所述第一出行应用的PUSH围栏触发,则解除当前场景的目标围栏;

若确定所述目标围栏触发,则忽略下一次获取的当前场景的PUSH消息。

8.根据权利要求5所述的方法,其特征在于,所述当前场景的目标围栏还包括当前场景的目标时间围栏;

所述检测当前场景的目标围栏是否触发,包括:

检测所述当前场景的目标地理围栏是否触发以及检测当前场景的目标时间围栏是否触发,所述当前场景的目标时间围栏触发用于指示达到预设的所述当前场景的特定时间。

9.根据权利要求8所述的方法,其特征在于,所述根据触发的围栏,解除当前场景的目标围栏或忽略下一次获取的当前场景的PUSH消息,包括:若确定当前场景的目标时间围栏触发,则解除当前场景的目标地理围栏以及忽略下一次获取的当前场景的PUSH消息;

若确定当前场景的目标地理围栏触发,则解除当前场景的目标时间围栏以及忽略下一次获取的当前场景的PUSH消息;

若确定所述第一出行应用的PUSH围栏触发,则解除当前场景的目标地理围栏以及当前场景的目标时间围栏。

10.根据权利要求5所述的方法,其特征在于,在所述检测第一出行应用的PUSH围栏是否触发之前,所述方法还包括:若检测到授权对象与用户在第一出行应用的用户账号之间存在授权关系,注册所述第一出行应用的PUSH围栏,所述授权对象包括所述电子设备的标识或用户在电子设备对应的服务器中的用户账号。

11.根据权利要求4至10中任一项所述的方法,其特征在于,出行的场景包括:抵达出发站的场景、行程中的场景、抵达目的站的场景以及离开目的站的场景。

12.根据权利要求11所述的方法,其特征在于,所述抵达出发站的场景的目标时间围栏的触发条件包括:距离预计出发时间的时间差值小于或等于第一预设时长;

抵达出发站的场景的目标地理围栏的目标区域包括:出发站所在区域。

13.根据权利要求11所述的方法,其特征在于,所述行程中的场景的目标时间围栏的触发条件包括:检测到位于预计出发时间与预计达到时间之间;

所述行程中的场景的目标地理围栏的目标区域包括所述出发站之外的预设区域。

14.根据权利要求11所述的方法,其特征在于,所述抵达目的站的场景的目标时间围栏的触发条件:达到预计达到时间与预计误差时长之间的时间和;

抵达目的站的场景的目标地理围栏的目标区域包括:目的站所在区域。

15.根据权利要求11所述的方法,其特征在于,所述离开目的站的场景的目标时间围栏的触发条件:达到预计达到时间与预设的出站时长之和;

离开目的站的场景的目标地理围栏的目标区域包括:所述目的站所在区域之外的预设区域。

16.根据权利要求11所述的方法,其特征在于,所述抵达出发站场景的目标地理围栏中的生效时间围栏的触发条件以及行程中场景下的目标地理围栏中的生效时间围栏的触发条件均为:距离预计出发时间小于等于预设的第一触发时长;

所述行程中场景下的目标地理围栏中的生效时间围栏触发条件以及所述抵达目的站场景下的目标地理围栏中的生效时间围栏的触发条件均为:距离预计出发时间小于等于预设的第二触发时长。

17.根据权利要求4所述的方法,其特征在于,所述显示所述当前场景的出行提醒之前,所述方法还包括:终止显示上一场景的出行提醒;

或者,

指示将显示内容从上一场景的出行提醒更新为当前场景的出行提醒。

18.根据权利要求1所述的方法,其特征在于,若所述电子设备注册的目标地理围栏为火车站围栏,所述方法具体包括:检测所述火车站围栏中的生效时间围栏是否触发,所述生效时间围栏触发用于指示达到预设的注册生效地理围栏的时间;若检测到火车站围栏中的生效时间围栏触发,则注册火车站围栏中的生效地理围栏,所述火车站围栏中的生效地理围栏的目标区域为火车票所指示的火车站;在注册火车站围栏中的生效地理围栏后,检测火车站围栏的生效地理围栏是否触发,若检测到目标地理围栏的生效地理围栏触发,则确定所述火车站围栏触发,所述火车站围栏中的生效地理围栏触发用于指示所述电子设备的位置处于所述火车站内;

若所述电子设备注册的目标地理围栏为机场围栏,所述方法具体包括:检测所述机场围栏中的生效时间围栏是否触发;若检测到机场围栏中的生效时间围栏触发,则注册机场围栏中的生效地理围栏,所述机场围栏中的生效地理围栏的目标区域为飞机票中指示的机场;在注册机场围栏中的生效地理围栏后,检测机场围栏的生效地理围栏是否触发,若检测到机场围栏的生效地理围栏触发,则确定所述机场围栏触发,所述机场围栏中的生效地理围栏触发用于指示所述电子设备的位置处于所述机场内。

19.一种电子设备,其特征在于,包括:

一个或多个处理器;

存储器;

以及一个或多个计算机程序,其中所述一个或多个计算机程序存储在所述存储器上,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行如权利要求1‑

18中任意一项所述的定位地理位置的方法。

说明书 :

定位地理位置的方法及电子设备

技术领域

[0001] 本申请涉及计算机技术领域,尤其涉及一种定位地理位置的方法及电子设备。

背景技术

[0002] 随着移动互联网的普及,基于当前用户位置的应用越来越多,例如,出行提醒应用中提供了地理围栏的功能,即用户进入到指定区域的时做出相应的提示或者相应。地理围栏是基于位置服务(LocationBasedService,LBS)的一种新应用,就是用一个虚拟的栅栏围出一个虚拟地理边界。当移动设备进入、离开某个特定地理区域,或在该区域内活动时,移动设备可以接收与该特定地理区域相关的自动通知和警告。

发明内容

[0003] 本申请提供一种优化的定位地理位置的方法及电子设备。
[0004] 在一些场景中,当用户使用手机从购票网站订购飞机票之后,手机上的出行提醒应用基于机场的经纬度信息注册地理围栏,当手机上的感知模块检测到地理围栏触发时,手机的显示模块就会向用户显示出行提醒信息。然而,在一些实现方式中,地理围栏一经注册,手机上的感知模块即会开始实时一直监测手机的地理位置,判断该地理围栏是否被触发,导致手机电量消耗过大。比如机场围栏可以作为一个地理围栏,若机场围栏一经注册,手机上的感知模块即会开始实时一直监测手机的地理位置,判断该机场围栏是否被触发。
[0005] 在本申请提供的一些实施例中,地理围栏可以具有生效时间属性,则一个机场围栏可以理解为包括了一个时间围栏和一个与该时间围栏关联的地理围栏(该时间围栏用于确定注册所述地理围栏的时间,也可理解为该时间围栏用于确定所述地理围栏的生效时间):提前订阅(订阅也可理解为注册)了机场围栏,机场围栏里的时间围栏会先被注册(或理解为先生效),什么时候开始去注册该地理围栏进而去感知这个地理围栏是否已触发可以设定一个生效时间,比如5天前定了一个机场围栏,但生效时间可以是第五天时(该时间围栏被触发时),那么在前四天即使用户经过了该地理位置,感知模块并不会去感知这个地理围栏事件。这样,在一个机场围栏被注册后,手机上的感知模块并不会立刻开始实时一直监测手机的地理位置以判断该机场围栏对应的地理围栏是否被触发,而是只会在该地理围栏的生效时间开始时(机场围栏对应的时间围栏被触发时)才去注册该地理围栏,进而可以在注册该地理围栏后开始监测手机的地理位置以判断该地理围栏是否被触发,节省了手机的电量。
[0006] 第一方面,本申请提供一种定位地理位置的方法,应用于电子设备,电子设备注册有目标地理围栏,该方法包括:检测目标地理围栏中的生效时间围栏是否触发,生效时间围栏触发用于指示达到预设的注册生效地理围栏的时间;若检测到目标地理围栏中的生效时间围栏触发,则注册目标地理围栏中的生效地理围栏;在注册目标地理围栏中的生效地理围栏后,检测目标地理围栏的生效地理围栏是否触发,若检测到目标地理围栏的生效地理围栏触发,则确定目标地理围栏触发,目标地理围栏的生效地理围栏触发用于指示电子设备的位置处于目标区域内。
[0007] 这样,目标地理围栏包括生效时间围栏和生效地理围栏,手机的业务逻辑处理模块向情景感知模块注册目标地理围栏,情景感知模块响应于注册指示,注册该目标地理围栏的生效时间围栏,当生效时间围栏触发后,该情景感知模块注册该目标地理围栏的生效地理围栏,并销毁该目标地理围栏的生效时间围栏。由于在生效时间围栏触发前,情景感知模块并未注册生效地理围栏,该情景感知模块不会监测电子设备所处的位置,减少了手机电量的消耗。同时也避免生效地理围栏的误触发,使得基于目标地理围栏的操作不会被执行,提高基于目标地理围栏触发的操作的准确性,提高用户使用体验。例如,11月1日用户订购了飞机票,出票后业务逻辑处理模块向情景感知模块注册进机场围栏,若预计起飞时间为12月1日,第一时间围栏(即进机场围栏的生效时间围栏)的触发条件为距离预计起飞时间的时长小于等于4小时,若用户在11月2日经过机场,由于进机场围栏中的生效时间围栏未触发,进而不会注册生效地理围栏,手机不会监测手机所处的位置,从而减少定位地理位置的电量消耗,同时由于未注册生效地理围栏,该进机场围栏不会被触发,不会导致手机显示进入机场的提示信息,提高用户使用出行提醒的体验。
[0008] 根据第一方面,检测目标地理围栏中的生效时间围栏是否触发之前,该方法还包括:获取用户的行程数据;根据行程数据和各出行的场景,注册各场景的目标地理围栏的生效时间围栏。这样,目标地理围栏中的生效时间围栏的注册是基于行程数据和出行的场景确定,使得生效时间围栏的触发条件符合用户的需求。例如,11月1日用户订购了飞机票,飞机票指示起飞时间为:12月1日12:00,根据抵达出发站的场景以及该起飞时间,可以注册第一机场围栏中的生效时间围栏为12月1日8:00,即该生效时间围栏的触发时间为12月1日8:00,若飞机票指示落地时间为:12月1日14:00,根据抵达目的站的场景以及落地时间,可以注册出第二机场围栏中的生效时间围栏为12月1日14:00,符合用户出行的行为。
[0009] 根据第一方面,注册目标地理围栏中的生效地理围栏,包括:根据当前出行的场景,从出行数据中获取当前出行的场景对应的目标位置;根据目标位置,注册当前出行的场景的生效地理围栏,生效地理围栏的目标区域为目标位置所在区域。这样,使得目标地理围栏中生效地理围栏的注册与用户的行程相匹配,进一步提高目标地理围栏的准确性。例如,用户的购票时间是1月1日,火车的发车时间为1月5日,那么可以根据用户的出发时间,可以在1月5日触发生效时间围栏,注册生效地理围栏,在1月5日之前该目标地理围栏中的生效地理围栏未注册,不会监测电子设备的位置,也即不会发生误检测位置的问题。
[0010] 根据第一方面,在注册该目标地理围栏之前,该方法还包括:获取用户的行程数据;根据用户的行程数据和各出行的场景,注册当前场景的目标围栏,当前场景的目标围栏包括目标地理围栏;在确定目标地理围栏触发之后,该方法还包括:判断是否显示当前场景的出行提醒;若确定显示当前场景的出行提醒,则显示当前场景的出行提醒。
[0011] 这样,根据用户的行程数据注册当前场景的目标围栏,当前场景的目标围栏包括该目标地理围栏,电子设备可以根据该目标地理围栏(即当前场景的目标围栏)的触发,显示当前场景的出行提醒,由于目标地理围栏中包括生效时间围栏和生效地理围栏,仅在生效时间围栏触发时,注册生效地理围栏,使得电子设备仅在生效时间围栏触发后检测电子设备的位置,减少功耗,同时也避免用户经过目标位置时,误触发的问题,提高目标地理围栏的准确性,进而使得为用户提供的出行提醒的准确性。
[0012] 根据第一方面,若确定显示当前场景的出行提醒,则显示当前场景的出行提醒之前,该方法还包括:检测第一出行应用的PUSH围栏是否触发,第一出行应用的PUSH围栏触发用于指示电子设备接收到第一出行应用的服务器发送的PUSH消息;若检测到第一出行应用的PUSH围栏触发,则判断是否显示当前场景的出行提醒;在确定显示当前场景的出行提醒之后,该方法还包括:根据触发的围栏,解除当前场景的目标围栏或忽略下一次获取的当前场景的PUSH消息。
[0013] 在一些场景中,若仅注册一个维度的围栏(如仅注册目标地理围栏),由于手机获取当前经纬度信息受到环境影响大,手机中情景感知模块获得的地理位置信息可能不准确,则会导致不能及时地为用户提供出行提醒的问题,存在漏提醒或误提醒的问题,例如,用户已进站,由于网络延时或信号问题,用户的手机并未收到来自铁路12306”应用的服务器发送的指示用户进站的PUSH消息,那么将导致电子设备出现漏提醒的问题。本申请中,电子设备根据行程数据,注册多个不同功能(维度)的围栏,如PUSH围栏、当前场景的目标地理围栏;电子设备同时对两个不同维度的信息进行监测,使得在不同场景下各个维度的信息相互弥补,避免因一个信息监测不准确而导致不能及时为用户进行出行提醒的问题,提高了出行提醒的准确性。
[0014] 根据第一方面,判断是否显示当前场景的出行提醒,包括:若检测到当前场景的目标围栏触发,则确定显示当前场景的出行提醒;若检测到第一出行应用的PUSH围栏触发,则解析接收的PUSH消息,判断PUSH消息中是否存在当前场景的PUSH消息;若确定获取到当前场景的PUSH消息,则确定显示当前场景的出行提醒;若确定未获取到当前场景的PUSH消息,则确定取消显示当前场景的出行提醒。
[0015] 这样,由于PUSH消息中通常包括的内容多,例如,当前场景为抵达出发站的场景,该电子设备接收到的PUSH消息可以是火车出行的火车票信息,该电子设备会检测到PUSH围栏触发,可见,该PUSH围栏的触发并不能用于指示用户是否到达火车站。本示例中通过对PUSH消息的解析,在检测到获取到当前场景的PUSH消息时,确定显示当前场景的引导信息,提高确定显示当前场景的引导信息的准确性,避免后续错误地显示引导信息。而当目标地理围栏触发时,可以指示电子设备的位置,无需进行其他操作,即可确定显示该场景的引导信息,判断速度快。
[0016] 根据第一方面,根据触发的围栏,解除当前场景的目标围栏或忽略下一次获取的当前场景的PUSH消息,包括:若确定第一出行应用的PUSH围栏触发,则解除当前场景的目标围栏;若确定目标围栏触发,则忽略下一次获取的当前场景的PUSH消息。这样,当PUSH围栏触发且确定获取到当前场景的PUSH消息时,确定显示当前场景的引导信息,解除当前场景的目标围栏,可以减少不必要的功耗;同理,当确定当前场景的目标围栏触发,可以确定显示当前场景的引导信息,无需对下一次获取的当前场景的PUSH消息进行处理,降低功耗。
[0017] 根据第一方面,当前场景的目标围栏还包括当前场景的目标时间围栏;检测当前场景的目标围栏是否触发,包括:检测当前场景的目标地理围栏是否触发以及检测当前场景的目标时间围栏是否触发,当前场景的目标时间围栏触发用于指示达到预设的当前场景的特定时间。这样,目标围栏还包括目标时间围栏,也即电子设备同时对三个围栏进行监测,增加一个时间维度的目标时间围栏,进一步丰富监测的数据,提高对用户行为的准确预测,进而为用户提供准确地出行提醒。例如,用户的火车票在12月1日10:00发车,若抵达出发站的特定时间预先设置为9:30,那么当时间达到9:30时,可以预测为用户已到达出发站,进而为用户提供抵达出发站的出行提醒。
[0018] 根据第一方面,根据触发的围栏,解除当前场景的目标围栏或忽略下一次获取的当前场景的PUSH消息,包括:若确定当前场景的目标时间围栏触发,则解除当前场景的目标地理围栏以及忽略下一次获取的当前场景的PUSH消息;若确定当前场景的目标地理围栏触发,则解除当前场景的目标时间围栏以及忽略下一次获取的当前场景的PUSH消息;若确定第一出行应用的PUSH围栏触发,则解除当前场景的目标地理围栏以及当前场景的目标时间围栏。这样,当目标围栏还包括目标时间围栏时,若目标地理围栏触发或目标时间围栏触发,不仅需要忽略下一次获取到的当前场景的PUSH消息,还需要解除目标围栏中另一个围栏,若第一出行应用的PUSH围栏触发且确定获取到当前场景的PUSH消息,解除目标地理围栏以及解除目标时间围栏,降低电子设备的功耗。
[0019] 根据第一方面,在检测第一出行应用的PUSH围栏是否触发之前,该方法还包括:
[0020] 若检测到授权对象与用户在第一出行应用的用户账号之间存在授权关系,注册第一出行应用的PUSH围栏,授权对象包括电子设备的标识或用户在电子设备对应的服务器中的用户账号。这样,在检测到授权对象与第一出行应用的用户账号之间的存在关系,注册第一出行应用的PUSH围栏,以确保可以及时对PUSH消息进行检测。
[0021] 根据第一方面,出行的场景包括:抵达出发站的场景、行程中的场景、抵达目的站的场景以及离开目的站的场景。这样,出行的场景为用户需要提醒的场景,针对该出行的场景进行出行提醒,有针对性,提高用户的体验。
[0022] 根据第一方面,抵达出发站的场景的目标时间围栏的触发条件包括:距离预计出发时间的时间差值小于或等于第一预设时长;抵达出发站的场景的目标地理围栏的目标区域包括:出发站所在区域。这样,目标时间围栏可以根据用户的行程确定,符合用户出行的要求,提高了出行提醒的准确性。
[0023] 根据第一方面,行程中的场景的目标时间围栏的触发条件包括:检测到位于预计出发时间与预计达到时间之间;行程中的场景的目标地理围栏的目标区域包括出发站之外的预设区域。这样,行程中的场景的目标时间围栏可以根据用户的行程确定,符合用户出行的要求,提高了出行提醒的准确性。
[0024] 根据第一方面,抵达目的站的场景的目标时间围栏的触发条件:达到预计达到时间与预计误差时长之间的时间和;抵达目的站的场景的目标地理围栏的目标区域包括:目的站所在区域。这样,抵达目的站的场景的目标时间围栏可以根据用户的行程确定,符合用户出行的要求,提高了出行提醒的准确性。同时,目的站所在区域作为抵达目的站场景的目标地理围栏的目标区域,使得该场景的目标地理围栏的设置符合用户的行程需求。
[0025] 根据第一方面,离开目的站的场景的目标时间围栏的触发条件:达到预计达到时间与预设的出站时长之和;离开目的站的场景的目标地理围栏的目标区域包括:所述目的站所在区域之外的预设区域。这样,离开目的站的场景的的目标时间围栏以及目标地理围栏可以根据用户的行程确定对应的触发条件,使得围栏的触发符合用户出行的要求,提高了出行提醒的准确性。
[0026] 根据第一方面,抵达出发站场景的目标地理围栏中的生效时间围栏的触发条件以及行程中场景下的目标地理围栏中的生效时间围栏的触发条件均为:距离预计出发时间小于等于预设的第一触发时长;行程中场景下的目标地理围栏中的生效时间围栏触发条件以及抵达目的站场景下的目标地理围栏中的生效时间围栏的触发条件均为:距离预计出发时间小于等于预设的第二触发时长。这样,根据预计到达时间以及预计出发时间,确定围栏的触发条件,使得围栏的触发符合用户出行的要求,提高了出行提醒的准确性。
[0027] 根据第一方面,显示当前场景的出行提醒之前,方法还包括:终止显示上一场景的出行提醒;或者,指示将显示内容从上一场景的出行提醒更新为当前场景的出行提醒。这样,避免出现过时的出行提醒打扰用户的问题,提高用户的使用体验。
[0028] 根据第一方面,若电子设备注册的目标地理围栏为火车站围栏,该方法包括:检测火车站围栏中的生效时间围栏是否触发,生效时间围栏触发用于指示达到预设的注册生效地理围栏的时间;若检测到火车站围栏中的生效时间围栏触发,则注册火车站围栏中的生效地理围栏,火车站围栏中的生效地理围栏的目标区域为火车行程数据中的火车站;在注册火车站围栏中的生效地理围栏后,检测火车站围栏的生效地理围栏是否触发,若检测到目标地理围栏的生效地理围栏触发,则确定火车站围栏触发,火车站围栏中的生效地理围栏触发用于指示电子设备的位置处于火车站内;
[0029] 若电子设备注册的目标地理围栏为机场围栏,该方法包括:检测机场围栏中的生效时间围栏是否触发;若检测到机场围栏中的生效时间围栏触发,则注册机场围栏中的生效地理围栏,机场围栏中的生效地理围栏的目标区域为飞机票中指示的机场;在注册机场围栏中的生效地理围栏后,检测机场围栏的生效地理围栏是否触发,若检测到机场围栏的生效地理围栏触发,则确定机场围栏触发,机场围栏中的生效地理围栏触发用于指示电子设备的位置处于机场内。
[0030] 这样,可以针对电子设备是否处于火车站或处于机场进行定位。
[0031] 第二方面,本申请提供了一种电子设备,包括:一个或多个处理器;存储器;以及一个或多个计算机程序,其中一个或多个计算机程序存储在存储器上,当计算机程序被一个或多个处理器执行时,使得所述电子设备执行上述第一方面以及第一方面的任意一种实现方式所对应的定位地理位置的方法。
[0032] 第二方面以及第二方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第二方面以及第二方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
[0033] 第三方面,本申请提供了一种计算机可读介质,用于存储计算机程序,当所述计算机程序在电子设备上运行时,使得所述电子设备执行上述第一方面以及第一方面的任意一种实现方式所对应的定位地理位置的方法。

附图说明

[0034] 为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0035] 图1是示例性示出的电子设备的结构示意图;
[0036] 图2是示例性示出的电子设备的软件结构示意图;
[0037] 图3是本申请实施例提供的一种定位地理位置的方法的示意图;
[0038] 图4为示例性示出的进入机场的提示信息的示意图;
[0039] 图5为示例性示出的各场景中飞行出行提醒示意图;
[0040] 图6为示例性示出的一种火车出行提醒的卡片的示意图。

具体实施方式

[0041] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0042] 本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
[0043] 本申请实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。
[0044] 在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
[0045] 在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个系统是指两个或两个以上的系统。
[0046] 图1为本申请实施例示出的一种电子设备100的结构示意图。应该理解的是,图1所示电子设备100仅是电子设备的一个范例,并且电子设备100可以具有比图中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图1中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
[0047] 电子设备100可以包括:处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器
170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头
193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
[0048] 可以理解的是,在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。
[0049] 电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
[0050] 图2是本申请实施例的电子设备100的软件结构框图。
[0051] 电子设备100的分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
[0052] 如图2所示,应用程序层可以包括一系列应用程序包。应用程序包可以包括情景感知模块,业务逻辑处理模块,业务呈现模块,图库,WLAN,蓝牙,音乐,游戏,短信息等应用程序。
[0053] 情景感知模块常驻运行或以低功耗形式运行,具有感知外部事实或者环境的能力。在卡片提醒业务处理开启状态时,情境感知模块对注册的事项(如特定时间、特定地点、或特定事件等)进行监控,如果用户触发了其中某一种事项,情境感知模块向业务逻辑处理模块发送通知。此外,情境感知模块还可以通过应用程序接口从应用程序层的其他应用程序或应用程序框架层或内核层检测相关事件和获取事件的状态,比如检测蓝牙连接,网络连接,监测用户短信,定制定时器等。
[0054] 业务逻辑处理模块用于实现各种卡片展示,通知的展示。
[0055] 业务呈现模块(如:YOYO建议),用于控制卡片显示或者消失。例如,业务呈现模块可以接收业务逻辑处理模块传递的显示提醒卡片的命令,并将该提醒卡片展示给用户。对应的,如果接收到业务逻辑处理模块传过来的消失卡片命令时,业务呈现模块消除该卡片。
[0056] 应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
[0057] 如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,资源管理器,通知管理器,活动管理器等。
[0058] 系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
[0059] 内核层是硬件和软件之间的层。内核层至少包含显示驱动,Wi‑Fi驱动,蓝牙驱动,音频驱动,传感器驱动等。
[0060] 可以理解的是,图2示出的软件结构中的层以及各层中包含的部件,并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的层,以及每个层中可以包括更多或更少的部件,本申请不做限定。
[0061] 在一些实施例中,用户通过购票应用购买机票后,该购票应用可以根据用户的机票信息为用户提供出行提醒。具体来说,用户通过购票应用购买机票后,该购票应用可以根据起飞机场的位置信息(即起飞机场的经纬度信息),注册进入机场的地理围栏。进入机场的地理围栏一经注册,手机可以按照固定频率获取用户的位置,判断用户是否进入机场所在区域,进而判断该进入机场的围栏是否触发。但是,若用户在未出行日经过机场,进入机场的围栏触发,电子设备基于该进入机场的围栏进行对应的操作(如弹出提醒的卡片),而实际用户并未有出行的行为,导致为用户提供了错误的提醒,影响用户的使用。例如,用户在11月1日订购了12月1日的机票,该用户的起飞机场为首都机场。在机票出票后,手机根据首都机场的经纬度注册进入机场的地理围栏,若检测到进入机场的地理围栏触发,则在手机的界面显示到达机场的卡片,该卡片上可以显示机票信息信息以及提示用户值机的信息。若用户在11月2日经过首都机场,进入机场的地理围栏被触发,手机上将弹出指示进入机场的卡片。手机为用户提供了错误的出行提醒,影响用户的使用。同时,手机从11月1日到12月1日期间按照预设频率监测用户的地理位置,以判断进入机场的围栏是否触发,长期消耗手机的电量,导致手机的功耗高。
[0062] 本申请一些实施例提供了一种定位地理位置的方法,以优化电子设备中地理围栏,减小地理围栏的功耗。示例性地,本申请实施例中电子设备100以手机为例。在其他实施例中,电子设备也可以是平板、智能穿戴设备、车载设备等。本申请中基于定位地理位置的应用可以是出行提醒类应用,比如,飞机出行提醒应用、火车出行提醒应用。或者是游玩应用,如购买电影票类应用、主题公园应用等。
[0063] 下面以飞机出行提醒应用为例说明本申请中定位地理位置的过程。图3为示例性示出的本申请中手机执行定位地理位置的方法时内部各模块的交互示意图。该定位地理位置的方法包括以下流程:
[0064] 步骤301:业务逻辑处理模块获取机场位置信息以及航班时间信息。
[0065] 示例性地,手机的业务逻辑处理模块可以获取机场位置信息以及航班时间信息。该机场位置信息可以是起飞机场的经纬度信息。航班时间信息可以包括预计起飞时间。
[0066] 该业务逻辑处理模块可以从机票订购应用(即第一出行应用)的服务器请求航班时间和起飞机场的信息。在一个示例中,用户服务平台(即电子设备对应的服务器)以荣耀平台为例,机票订购应用以航旅纵横为例。用户的荣耀账号(即用户在电子设备对应的服务器中的用户账号)与用户的航旅纵横账号(即用户在航旅纵横的用户账号)之间存在授权关系(即用户的荣耀账号与用户的航旅纵横账号相互绑定),当用户使用航旅纵横账号订购飞机票之后,该航旅纵横的服务器将该飞机票的订单摘要(订单摘要如包括时间、航班号等)发送至荣耀平台,荣耀平台根据用户的荣耀账号与终端(如手机A)之间的绑定关系,将该订单摘要发送至对应的手机A上。手机A的业务逻辑处理模块根据该订单摘要的信息,向航旅纵横的服务器的接口请求该用户的航班数据,该航班数据可以包括该航班的完整信息,如起飞机场、目的地、航班号、座位号、登机口、车票状态(如改签,退票)等信息。航旅纵横的服务器将航班数据返回手机A的业务逻辑处理模块。可选地,该业务逻辑处理模块可以根据起飞机场的名称,查询起飞机场的经纬度信息。
[0067] 步骤302:业务逻辑处理模块向情景感知模块注册进机场围栏以及出机场围栏。
[0068] 示例性地,业务逻辑处理模块可以根据机场的位置信息以及提醒应用中地理围栏的应用需求,向情景感知模块注册对应提醒功能的机场围栏。
[0069] 可选地,本示例中,业务逻辑处理模块根据起飞机场的位置信息,向情景感知模块注册进机场围栏和出机场围栏。可选地,业务逻辑处理模也可以根据起飞机场的位置信息,向情景感知模块注册进机场围栏。该业务逻辑处理模块也可以根据落地机场的位置信息,向情景感知模块注册目的机场围栏,该目的机场围栏判断用户的位置是否处于目的机场所在区域。本申请以业务逻辑处理模块向情景感知模块注册进机场围栏以及出机场围栏为例。
[0070] 步骤303:情景感知模块注册进机场围栏中的第一时间围栏以及注册出机场围栏中的第二时间围栏。
[0071] 示例性地,情景感知模块注册任一地理围栏的过程可以为:情景感知模块接收到指示注册地理围栏的指示信息后,注册生效时间围栏以及生效地理围栏。该生效时间围栏的触发时间由业务逻辑处理模块确定。情景感知模块在检测到生效时间围栏触发后,注册生效地理围栏,同时,该情景感知模块销毁该生效时间围栏。生效地理围栏的目标经纬度由业务逻辑处理模块提供。本示例中地理围栏以进机场围栏和出机场围栏为例。
[0072] 该进机场围栏包括:第一时间围栏和进入地理围栏。当情景感知模块响应于业务逻辑处理模块的注册指示,注册进机场围栏后,触发该情景感知模块注册第一时间围栏。该第一时间围栏用于判断是否达到进入地理围栏的注册时间,该第一时间围栏也称为该进机场围栏的生效时间围栏,该进入地理围栏也即为该进机场围栏的生效地理围栏。
[0073] 该出机场围栏包括:第二时间围栏和离开地理围栏。当情景感知模块响应于业务逻辑处理模块的注册指示,注册出机场围栏后,触发该情景感知模块注册第二时间围栏。该第二时间围栏用于判断是否达到离开地理围栏的注册时间,该第二时间围栏也称为该出机场围栏的生效时间围栏,该离开地理围栏也即为该出机场围栏的生效地理围栏。
[0074] 该第一时间围栏的触发条件和第二时间围栏的触发条件可以相同,也可以不同。本示例中以第一时间围栏的触发条件和第二时间围栏的触发条件相同为例。例如,业务逻辑处理模块可以指示第一时间围栏的触发条件和第二时间围栏的触发条件均为检测时间与预计起飞时间相距的时长小于或等于4小时,检测时间可以记为t,该检测时间为情景感知模块检测第一时间围栏或第二时间围栏是否触发的时刻,预计起飞时间记为T1,则情景感知模块检测到T1‑t≤4h,则情景感知模块检测到第一时间围栏和第二时间围栏均触发。
[0075] 步骤304:情景感知模块检测到第一时间围栏触发以及第二时间围栏触发,注册进机场围栏中的进入地理围栏以及注册出机场围栏中的离开地理围栏。
[0076] 示例性地,情景感知模块检测到第一时间围栏触发,则注册进机场围栏中的进入地理围栏。本示例中,该进入地理围栏中目标经纬度为起飞机场的经纬度。该进入地理围栏用于判断用户的位置是否处于该机场所处区域内。同理,情景感知模块检测到第二时间围栏触发,注册出机场围栏中的离开地理围栏。该离开地理围栏用于判断用户的位置是否位于机场所处区域之外。可选地,该进入地理围栏的目标经纬度可以与离开地理围栏的目标经纬度一致。
[0077] 当情景感知模块注册进入地理围栏后,该情景感知模块可以按照第一预设间隔判断用户的位置是否位于起飞机场的区域内。第一预设间隔可以是1分钟、2分钟、10分钟等。同理,当情景感知模块注册离开地理围栏后,该情景感知模块可以按照第一预设间隔判断用户的位置是否位于起飞机场的区域之外。第一时间围栏触发后,该情景感知模块销毁该第一时间围栏。同理,第二时间围栏触发后,情景感知模块销毁该第二时间围栏。及时销毁生效时间围栏,可以减少电量的消耗。
[0078] 举例来说,用户的航班信息包括:预计起飞时间为:2021年11月28日11:00,起飞机场:首都机场。业务逻辑处理模块指示第一时间围栏和第二时间围栏的触发条件均为:检测时间与预计起飞时间相距的时长小于或等于n(如n=4)小时。情景感知模块的检测时间为2021年11月28日7:02,则情景感知模块检测到第一时间围栏触发,注册进入地理围栏,并销毁该第一时间围栏,其中,该进入地理围栏的目标经纬度为首都机场的经纬度,该情景感知模块开始监测进入地理围栏是否触发(如每间隔1分钟检测用户的位置是否处于起飞机场的区域内)。同时,情景感知模块检测到第二时间围栏触发(检测时间2021年11月28日7:
02),该情景感知模块注册离开地理围栏并销毁第二时间围栏,该离开地理围栏的目标经纬度也为首都机场的经纬度,该情景感知模块开始监测离开地理围栏是否触发(如每间隔1分钟检测用户的位置是否处于起飞机场的区域外)。
[0079] 步骤305:情景感知模块检测到进入地理围栏触发。
[0080] 示例性地,情景感知模块按照第二预设间隔检测用户的位置是否处于起飞机场的区域内,若情景感知模块检测到用户的位置处于起飞机场的区域内,即情景感知模块检测到进入地理围栏触发。第二预设间隔可以是30秒、1分钟、2分钟以及以上。
[0081] 步骤306:情景感知模块指示进入地理围栏触发。
[0082] 该情景感知模块向业务逻辑处理模块上报该进入地理围栏触发的事件。本示例中,进入地理围栏触发的事件也可以作为进机场围栏的触发事件,也就是说,情景感知模块检测到进入地理围栏触发,则确定检测到该进机场围栏触发,可以向业务逻辑处理模块指示进机场围栏触发。
[0083] 在一些实施例中,该情景感知模块向业务逻辑处理模块上报进入地理围栏触发的事件,同时可以销毁(即解注册)该进入地理围栏。
[0084] 步骤307:业务逻辑处理模块发送指示业务呈现模块显示提示信息的指示信息。
[0085] 业务逻辑处理模块向业务呈现模块发送指示信息,该指示信息指示业务呈现模块显示提示信息,其中,该指示信息中包括提示信息。提示信息可以包括:用户进入机场的信息,机票的详细信息等。
[0086] 在一些实施例中,业务逻辑处理模块向业务呈现模块发送指示信息的同时,可以向情景感知模块发送第一解注册指示,该第一解注册指示用于指示情景感知模块解注册该进入地理围栏。情景感知模块可以响应于该第一解注册指示,解注册该进入地理围栏。可选地,情景感知模块接收到该第一解注册指示,可以检测是否注册有进入地理围栏,若是,则解注册该进入地理围栏,若未检测到注册有该进入地理围栏,则结束解注册进入地理围栏的流程。
[0087] 本示例中,业务逻辑处理模块向情景感知模块发送第一解注册指示,可以进一步确保该进入地理围栏触发后被解注册,避免手机继续监测用户的位置是否处于机场区域内,减少电量的消耗。
[0088] 步骤308:业务呈现模块显示用于指示到达机场的提示信息。
[0089] 示例性地,业务呈现模块接收到业务逻辑处理模块发送的提示信息,显示该提示信息,显示的方式可以是通过卡片方式显示,如在桌面显示卡片或者在负一屏显示卡片。显示方式还可以包括通知的方式显示,如:锁屏通知;语音显示提示信息的方式;或者通过特定的震动频率显示提示信息。
[0090] 在一些实施例中,可以同时以多种显示方式同时显示该提示信息,例如,可以同时以通知和震动的方式显示提示信息。或者,同时以卡片和语音播放的方式显示提示信息。
[0091] 本示例中显示方式可以包括卡片和通知的方式,即业务呈现模块可以同时在桌面显示卡片、负一屏显示卡片以及通知的方式显示提示信息。同时采用多种方式显示提示信息,可以增加提示信息暴露的概率,从而增加用户查看到提示信息的概率,避免出现用户漏看提示信息而错过行程的问题。
[0092] 步骤309:情景感知模块检测到离开地理围栏触发。
[0093] 该步骤与步骤305类似,示例性地,情景感知模块按照第二预设间隔检测用户的位置是否处于起飞机场的区域之外,若情景感知模块检测到用户的位置处于起飞机场的区域之外,即情景感知模块检测到离开地理围栏触发。第二预设间隔可以按照实际应用设置,例如,30秒、1分钟、2分钟以及以上。
[0094] 步骤310:情景感知模块向业务逻辑处理模块指示离开地理围栏触发。
[0095] 该情景感知模块向业务逻辑处理模块上报该离开地理围栏触发的事件。本示例中,离开地理围栏触发的事件也可以作为出机场围栏的触发事件,也就是说,情景感知模块检测到离开地理围栏触发,则确定检测到该出机场围栏触发,可以向业务逻辑处理模块指示出机场围栏触发。
[0096] 在一些实施例中,该情景感知模块向业务逻辑处理模块上报离开地理围栏触发的事件,同时可以销毁该离开地理围栏。
[0097] 步骤311:业务逻辑处理模块发送用于指示业务呈现模块终止显示提示信息的结束指示。
[0098] 示例性地,该业务逻辑处理模块确定出机场围栏触发,可以向业务呈现模块发送结束指示,该结束指示可以用于指示业务呈现模块终止显示进入机场的提示信息。
[0099] 在一些实施例中,业务逻辑处理模块可以向情景感知模块发送第二解注册指示,该第二解注册指示用于指示情景感知模块解注册该离开地理围栏。情景感知模块可以响应于该第二解注册指示,解注册该离开地理围栏。可选地,情景感知模块接收到该第二解注册指示,可以检测是否注册有离开地理围栏,若是,则解注册该离开地理围栏,若未检测到注册有该离开地理围栏,则结束解注册离开地理围栏的流程。
[0100] 步骤312:业务呈现模块终止显示提示信息。
[0101] 示例性地,该业务逻辑呈现模块终止显示提示信息,例如,若提示信息以卡片形式显示,当业务呈现模块终止显示提示信息后,该卡片将从界面上消失。
[0102] 在一些实施例中,在执行步骤310之后,不执行步骤311和步骤312,该业务逻辑处理模块还可以向业务呈现模块发送显示离开指示,该离开指示用于指示业务呈现模块显示用户离开机场的起飞信息。该离开指示包括起飞信息,起飞信息可以包括:提示用户飞机已起飞的信息。业务呈现模块接收到离开指示,显示该起飞信息。
[0103] 本示例中,该离开指示可以指示业务呈现模块将显示内容替换为当前场景的起飞信息,例如,业务呈现模块在T1时刻的显示内容为信息A(该信息A为进入机场的提示信息),经过1小时后,业务逻辑处理模块的离开指示指示业务呈现模块将信息A替换为信息B(该信息B为起飞信息),业务呈现模块在T1+1h时刻显示起飞信息。该显示方式无需业务逻辑模块单独发送终止指示。
[0104] 在一些实施例中,业务逻辑处理模块向业务呈现模块发送用于显示提示信息的指示信息,同时,该业务逻辑处理模块向业务呈现模块发送终止指示,该终止指示用于指示业务呈现模块终止上一次显示的信息。
[0105] 在另一些实施例中,业务逻辑处理模块可以设置显示时长阈值,若显示同一信息的时长超出预设的显示时长阈值,该业务逻辑处理模块将指示业务呈现模块终止显示该信息,例如,预设的显示时长阈值为4小时,当业务逻辑处理模块确定起飞信息显示了4小时,则业务逻辑处理模块指示终止显示该起飞信息,业务呈现模块终止显示该起飞信息。设置显示时长阈值,可以避免长时间显示同一信息。
[0106] 本示例中,地理围栏包括生效时间围栏和生效地理围栏,业务逻辑处理模块向情景感知模块注册地理围栏,情景感知模块响应于注册指示,注册该地理围栏的生效时间围栏,当生效时间围栏触发后,该情景感知模块注册该地理围栏的生效地理围栏,并销毁该地理围栏的生效时间围栏。由于在生效时间围栏触发前,情景感知模块并未注册生效地理围栏,该情景感知模块不会监测用户的位置,减少了手机电量的消耗。同时也避免生效地理围栏的误触发,基于地理围栏的操作不会被执行,使得基于进机场围栏触发的操作的准确性,提高用户使用体验。例如,11月1日用户订购了飞机票,出票后业务逻辑处理模块向情景感知模块注册进机场围栏,若预计起飞时间为12月1日,第一时间围栏的触发条件为距离预计起飞时间的时长小于等于4小时,若用户在11月2日经过机场,由于进机场围栏中的第一时间围栏未触发,进而不会注册进入地理围栏,手机不会监测用户的位置,从而减少定位地理位置的电量消耗,同时由于未注册进入地理围栏,即该进机场围栏未触发,不会导致手机显示进入机场的提示信息,提高出行提醒的准确性。
[0107] 下面结合具体场景,对本申请实施例中定位地理位置的方法进行详细说明。该示例中以基于地理围栏的出行提醒应用的场景为例。
[0108] 图4为示例性示出的进入机场的提示信息的示意图。图5为示例性示出的飞行出行提醒示意图。下面结合图4和图5具体说明本申请实施例中定位地理位置的方法。
[0109] 示例性地,以飞机出行为例,购票应用以航旅纵横为例,用户服务平台以荣耀平台为例。用户的荣耀账号与用户的航旅纵横账号之间具有授权关系,用户使用航旅纵横的账号订购飞机票,该机票的出票时间为t0,该航旅纵横的服务器将该飞机票的订单摘要(订单摘要如包括时间、航班号等)发送至荣耀平台,荣耀平台根据用户的荣耀账号与手机之间的绑定关系,将该订单摘要发送至对应的手机上。手机的业务逻辑处理模块根据该订单摘要的信息,向航旅纵横的服务器的接口请求该用户的航班数据,该航班数据可以包括该航班的完整信息,如起飞机场、目的地、航班号、座位号、登机口、车票状态(如改签,退票)等信息。航旅纵横的服务器将航班数据返回手机的业务逻辑处理模块。如图5所示,业务逻辑处理模块在T0时刻获取到用户完整的航班数据。该业务逻辑处理模块从而获取到机场位置信息以及航班时间信息(如,预计起飞时间为:2021年5月6日22:40,起飞机场:深圳宝安机场)。该业务逻辑处理模块在T1时刻向情景感知模块注册进机场围栏和出机场围栏。该业务逻辑处理模块根据预计起飞时间,可以确定第一时间围栏和第二时间围栏的触发条件均为距离预计起飞时间的时长小于等于4小时。当情景感知模块检测到T4‑T2的值小于等于4小时,T4为预计起飞时间,T2为第一时间围栏和第二时间围栏的某一检测时刻,则该情景感知模块在T2时刻检测到第一时间围栏触发,注册进机场围栏中的进入地理围栏,该情景感知模块在T2时刻检测到第二时间围栏触发,注册出机场围栏中的离开地理围栏。在T3时刻情景感知模块检测到进机场围栏中的进入地理围栏触发,情景感知模块向业务逻辑处理模块上报进入地理围栏触发的事件并销毁该进入地理围栏。业务逻辑处理模块指示业务呈现模块显示提示信息,该提示信息指示用户进入机场区域内。业务呈现模块在T3时刻以卡片的显示方式显示该提示信息,如图4所示,界面401中显示有卡片402,该卡片402中包括有航班号,起飞机场,目的地机场,值机柜台以及登机口信息等。该情景感知模块按照第二预设间隔监测离开地理围栏是否触发。当情景感知模块在T5时刻检测到离开地理围栏触发,该情景感知模块向业务逻辑处理模块上报离开地理围栏触发的事件,同时销毁该离开地理围栏。业务逻辑处理模块可以向业务呈现模块指示终止显示提示信息的指示。该业务呈现模块在T5时刻终止显示提示信息,即业务呈现模块在T5时刻将如图4中的卡片402从界面401上移除。
[0110] 本申请中的地理围栏还可以与其他围栏相互配合使用。例如,地理围栏、PUSH围栏和时间围栏配合使用。下面以一个具体的例子说明地理围栏与其他围栏配合使用的过程。
[0111] 图6为示例性示出的一种火车出行提醒卡片的示意图。
[0112] 示例性地,以火车出行为例,购票应用的服务器以12306应用的服务器为例,服务平台(即电子设备对应的服务器)以荣耀平台为例。手机的业务逻辑处理模块向12306平台(即购票应用的服务器)请求行程数据。12306平台向手机的业务逻辑处理模块返回行程数据。用户的行程数据中可以包括预计出发时间(如图6中(1)所示的5月4日9:20)、预计到达时间(如图6中(1)所示的5月6日9:20)、出发站经纬度信息、目的站经纬度信息等。业务逻辑处理模块向情景感知模块注册PUSH围栏、各场景的目标围栏,其中,每个场景的目标围栏包括目标地理围栏(后文也称为地理围栏)和目标时间围栏(后文也称为保底时间围栏)。表1为本示例中列举的各个场景以及各个场景的地理围栏的触发条件、保底时间围栏的触发条件以及各场景的PUSH消息。其中,保底时间围栏即属于时间围栏。
[0113] 表1
[0114]场景 PUSH消息 地理围栏 保底时间围栏
抵达出发站 获取到进站的PUSH消息 进入出发站 T1‑t的差值小于等于t1
行程中 获取到行程中的PUSH消息 离开出发站 T1≤t≤T4
抵达目的站 无 进入目的站 T4±t2
离开目的站 获取到出站的PUSH消息 离开目的站 t=T4+t3
[0115] 表1中t为检测时间,T1为预计出发时间,T4为预计达到时间,t1为第一预设时长(如t1=30min),t2为12306平台提供的延时时长,如10min,t3为第三预设时长(如t3=60min)。
[0116] 业务逻辑处理模块可以按照表1中触发条件设置各场景的地理围栏和各场景的保底时间围栏。其中,业务逻辑处理模块可以指示抵达出发站场景的地理围栏中生效时间围栏的触发条件为距离预计出发时间前2小时,业务逻辑处理模块可以指示行程中地理围栏的生效时间围栏的触发条件也为距离预计出发时间前2小时。当情景感知模块检测到时间与预计达到时间的差值小于等于2小时(如5月4日7:20),情景感知模块注册抵达出发站场景的地理围栏中的生效地理围栏以及注册行程中地理围栏中的生效地理围栏,即开始检测抵达出发站场景的地理围栏是否触发以及检测行程中地理围栏是否触发。
[0117] 若情景感知模块在5月4日8:20检测到手机的经纬度与出发站经纬度一致,该抵达出发站场景的地理围栏触发,即情景感知模块检测到该抵达出发站场景的地理围栏触发。手机的情景感知模块向业务逻辑处理模块指示当前场景的地理围栏触发。业务逻辑处理模块确定当前场景的地理围栏触发。业务逻辑处理模块向业务呈现模块发送用于指示业务呈现模块显示提示信息的指示信息。业务逻辑处理模块向情景感知模块发送用于指示解除保底时间围栏的解除指示。情景感知模块解除当前场景的保底时间围栏。业务呈现模块显示提示信息。业务呈现模块以卡片的形式显示抵达出发站的提示信息。如图6中(1)所示,桌面界面601上显示了抵达出发站的场景的卡片602,该卡片602中显示有抵达出发站的提示信息,如预计出发时间,预计到达时间,车厢座位号,目的地,检票口信息以及控件6021,点击该控件6021,可以跳转至12306应用中的车票详情页面。
[0118] 在一个示例中,业务逻辑处理模块可以指示显示卡片602的时长,若确定卡片602显示时长超出显示时长阈值,则业务逻辑处理模块指示业务呈现模块终止显示该卡片602。
[0119] 当情景感知模块检测到PUSH围栏触发(如收到行程中的PUSH消息)。手机的情景感知模块向业务逻辑处理模块指示PUSH围栏触发。业务逻辑处理模块确定获取到当前场景的PUSH消息。业务逻辑处理模块向业务呈现模块发送用于指示业务呈现模块显示提示信息的指示信息。业务逻辑处理模块向情景感知模块发送用于指示解除当前场景的地理围栏以及当前场景的保底时间围栏的指示信息。情景感知模块解除当前场景的地理围栏和当前场景的保底时间围栏。业务呈现模块显示当前场景的提示信息。当前场景为行程中,该业务呈现模块显示如图6的(2)所示的提示信息,桌面界面603上显示了该行程中的场景的卡片604,该卡片604中显示有抵达出发站的提示信息,如预计出发时间,预计到达时间,车厢座位号,目的地,控件6041以及控件6042,若检测到点击该控件6041的操作,可以跳转至12306应用中的车票详情页面。若检测到点击控件6042的操作,可以订阅到站提醒的功能。
[0120] 当情景感知模块检测到保底时间围栏触发(如时间达到5月6日9:45)。手机的情景感知模块向业务逻辑处理模块指示当前场景的保底时间围栏触发。业务逻辑处理模块确定当前场景的保底时间围栏触发。业务逻辑处理模块向业务呈现模块发送用于指示业务呈现模块显示提示信息的指示信息。业务逻辑处理模块向情景感知模块发送用于指示解除地理围栏的解除指示。情景感知模块解除当前场景的地理围栏。业务逻辑处理模块忽略下一次获取到当前场景的PUSH消息。业务呈现模块显示提示信息。业务呈现模块显示抵达目的站场景的提示信息,该业务呈现模块显示如图6的(3)所示的提示信息,桌面界面605上显示了抵达目的站的场景的卡片606,该卡片606中显示有抵达目的站的提示信息,如预计出发时间,预计到达时间,车厢座位号,目的地,控件6061以及已到站的信息,若检测到点击该控件6061的操作,可以跳转至12306应用中的车票详情页面。
[0121] 若情景感知模块在5月6日10:20检测到手机的经纬度与目的站经纬度一致,该离开目的站场景的地理围栏触发,即情景感知模块检测到该离开目的站场景的地理围栏触发。手机的情景感知模块向业务逻辑处理模块指示当前场景的地理围栏触发。业务逻辑处理模块确定当前场景的地理围栏触发。业务逻辑处理模块向业务呈现模块发送用于指示业务呈现模块显示提示信息的指示信息。业务逻辑处理模块向情景感知模块发送用于指示解除保底时间围栏的解除指示。业务逻辑处理模块忽略下一次获取到当前场景的PUSH消息。情景感知模块解除当前场景的保底时间围栏。业务呈现模块显示提示信息。业务呈现模块以卡片的形式显示离开目的站的提示信息。该提示信息可以以通知的形式显示。图6中未示出离开目的站场景的提示信息。
[0122] 本示例中,业务逻辑处理模块向情景感知模块注册包括地理围栏的多个不同功能(维度)的围栏。情景感知模块同时对三个不同维度的信息进行监测,使得在不同场景下各个维度的信息相互弥补,避免因一个信息监测不准确而导致不能及时为用户进行出行提醒的问题。同时,由于注册有多个围栏,采用本申请中具有生效时间围栏的地理围栏,可以减少电量的消耗,该地理围栏的应用灵活。
[0123] 可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
[0124] 本实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,使得电子设备执行上述相关方法步骤实现上述实施例中的定位地理位置的方法。存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0125] 本实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的定位地理位置的方法。
[0126] 其中,本实施例提供的电子设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
[0127] 本申请各个实施例的任意内容,以及同一实施例的任意内容,均可以自由组合。对上述内容的任意组合均在本申请的范围之内。
[0128] 上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。