CN110928769B - 基于小程序模拟定位的方法、装置、电子设备及存储介质 - Google Patents
基于小程序模拟定位的方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN110928769B CN110928769B CN201911032657.5A CN201911032657A CN110928769B CN 110928769 B CN110928769 B CN 110928769B CN 201911032657 A CN201911032657 A CN 201911032657A CN 110928769 B CN110928769 B CN 110928769B
- Authority
- CN
- China
- Prior art keywords
- place name
- simulated
- applet
- positioning
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Navigation (AREA)
Abstract
本发明提供了一种基于小程序模拟定位的方法、装置、电子设备及存储介质,旨在提高小程序的模拟定位速率。所述方法应用于代理服务器,所述代理服务器部署在用户终端和定位服务器之间,所述方法包括:检测所述用户终端上运行的小程序是否发出定位请求;在检测到所述小程序发出的定位请求时,拦截所述定位请求;将所述定位请求发送给所述定位服务器;接收所述定位服务器返回的定位响应信息;依次从待模拟地名列表包括的多个待模拟地名中,确定一个目标待模拟地名;将所述定位响应信息中的原始地名信息更改为所述目标待模拟地名对应的地名信息,并将所述目标待模拟地名对应的地名信息返回给所述小程序,使所述小程序显示所述目标待模拟地名。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种基于小程序模拟定位的方法、装置、电子设备及存储介质。
背景技术
随着互联网技术的发展和智能终端设备的普及,各种各样的应用程序被推向用户,涉及购物、音视频、外卖、新闻、租赁、办公、票务等各个方面。相关技术中,小程序是一种无需下载安装即可使用的应用程序,用户通过宿主程序查找到目标小程序,并进入该目标小程序以获得相应的服务。
某些小程序在向用户提供服务之前,需要预先确定用户的定位区域,然后根据用户定位区域对应的数据处理参数,为用户提供预期服务。相关技术中,小程序为了确定用户的定位区域,通常采用以下两种方式:第一种,小程序主动通过宿主程序提供的接口获取当前位置的经纬度,然后根据该经纬度信息确定用户的当前定位区域。第二种,小程序接收用户的手动操作,将定位区域切换至用户期望的目标区域。其中,第一种定位方式是小程序自动实现的,无需用户手动操作,但是其仅能定位至用户当前所在区域。第二种定位方式需要用户手动操作,但是其可以定位至用户期望的任意区域。
软件测试人员在对这类依赖于用户定位的小程序进行测试时,通常需要针对多个定位区域分别进行测试,旨在确保小程序在定位至不同区域时,均能提供用户期望的服务。在测试期间,为了模拟不同区域的定位,测试人员需要手动地更改小程序的定位区域,然而由于这种模拟定位的方式依赖于人的手动操作,模拟定位的速率较低,影响测试进度。
发明内容
本发明实施例提供一种基于小程序模拟定位的方法、装置、电子设备及存储介质,旨在提高小程序的模拟定位速率。
为了解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供了一种基于小程序模拟定位的方法,应用于代理服务器,所述代理服务器部署在用户终端和定位服务器之间,该方法可以包括:
检测所述用户终端上运行的小程序是否发出携带经纬度信息的定位请求,所述定位请求用于请求所述定位服务器根据所述经纬度信息确定对应的地名信息;
在检测到所述小程序发出的定位请求时,拦截所述定位请求;
将所述定位请求发送给所述定位服务器;
接收所述定位服务器返回的定位响应信息,所述定位响应信息携带所述定位服务器确定的对应于所述经纬度信息的原始地名信息;
依次从待模拟地名列表包括的多个待模拟地名中,确定一个目标待模拟地名,所述待模拟地名列表是用户设置的;
将所述原始地名信息更改为所述目标待模拟地名对应的地名信息,并将所述目标待模拟地名对应的地名信息返回给所述小程序,以使所述小程序显示所述目标待模拟地名。
可选地,在将所述目标待模拟地名对应的地名信息返回给所述小程序之后,所述方法还包括:
检测所述小程序当前显示的页面上的地名;
在所述小程序当前显示的页面上的地名不同于所述目标待模拟地名的情况下,检测所述小程序当前显示的页面上是否弹出提示弹窗,所述提示弹窗用于提示用户切换至所述目标待模拟地名。
可选地,在检测所述小程序当前显示的页面上是否弹出提示弹窗之后,所述方法还包括:
在所述小程序当前显示的页面上弹出所述提示弹窗的情况下,检测用户的确认操作,所述确认操作用于指示切换至所述目标待模拟地名;
检测所述小程序的子功能页面是否显示当前定位至所述目标待模拟地名。
可选地,在将所述目标待模拟地名对应的地名信息返回给所述小程序之后,所述方法还包括:
在所述小程序当前显示的页面上的地名不同于所述目标待模拟地名的情况下,获取所述目标待模拟地名对应的地名信息的数据处理参数;
检测所述小程序是否加载所述目标待模拟地名对应的地名信息的数据处理参数,以按照所述目标待模拟地名对应的地名信息的数据处理参数进行数据处理。
可选地,所述方法还包括:
接收用户输入的自定义待模拟地名;
判断所述自定义待模拟地名是否在所述待模拟地名列表中;
在所述自定义待模拟地名不在所述待模拟地名列表中的情况下,检测所述小程序是否显示当前定位至默认地名信息表征的地名。
可选地,将所述原始地名信息更改为目标待模拟地名对应的地名信息,包括:
对所述定位响应信息进行解析,确定所述定位响应信息中的地名参数,所述地名参数包括地名标识和/或地名;
将所述地名参数的值更改为表征所述目标待模拟地名对应的地名信息的值。
可选地,在对所述定位响应信息进行解析,确定所述定位响应信息中的地名参数之后,所述方法还包括:
检测所述用户终端上运行的小程序是否再次发出携带经纬度信息的定位请求;
在检测到所述小程序再次发出的定位请求时,拦截所述再次发出的定位请求;
将所述原始地名信息更改为第二目标地名信息,并将所述第二目标地名信息返回给所述小程序,以使所述小程序显示所述第二目标地名。
第二方面,本发明实施例另外提供了一种基于小程序模拟定位的装置,应用于代理服务器,所述代理服务器部署在用户终端和定位服务器之间,该装置包括:
请求检测模块,用于检测所述用户终端上运行的小程序是否发出携带经纬度信息的定位请求,所述定位请求用于请求所述定位服务器根据所述经纬度信息确定对应的地名信息;
请求拦截模块,用于在检测到所述小程序发出的定位请求时,拦截所述定位请求;
请求发送模块,用于将所述定位请求发送给所述定位服务器;
响应接收模块,用于接收所述定位服务器返回的定位响应信息,所述定位响应信息携带所述定位服务器确定的对应于所述经纬度信息的原始地名信息;
地名确定模块,用于依次从待模拟地名列表包括的多个待模拟地名中,确定一个目标待模拟地名,所述待模拟地名列表是用户设置的;
信息更改模块,用于将所述原始地名信息更改为所述目标待模拟地名对应的地名信息,并将所述目标待模拟地名对应的地名信息返回给所述小程序,以使所述小程序显示所述目标待模拟地名。
可选地,所述装置还包括:
地名检测模块,用于在将所述目标待模拟地名对应的地名信息返回给所述小程序之后,检测所述小程序当前显示的页面上的地名;
弹窗检测模块,用于在所述小程序当前显示的页面上的地名不同于所述目标待模拟地名的情况下,检测所述小程序当前显示的页面上是否弹出提示弹窗,所述提示弹窗用于提示用户切换至所述目标待模拟地名。
可选地,所述装置还包括:
操作检测模块,用于在检测所述小程序当前显示的页面上是否弹出提示弹窗之后,并在所述小程序当前显示的页面上弹出所述提示弹窗的情况下,检测用户的确认操作,所述确认操作用于指示切换至所述目标待模拟地名;
所述地名检测模块还用于检测所述小程序的子功能页面是否显示当前定位至所述目标待模拟地名。
可选地,所述装置还包括:
参数获取模块,用于在将所述目标待模拟地名对应的地名信息返回给所述小程序之后,并在所述小程序当前显示的页面上的地名不同于所述目标待模拟地名的情况下,获取所述目标待模拟地名对应的地名信息的数据处理参数;
参数检测模块,用于检测所述小程序是否加载所述目标待模拟地名对应的地名信息的数据处理参数,以按照所述目标待模拟地名对应的地名信息的数据处理参数进行数据处理。
可选地,所述装置还包括:
地名接收模块,用于接收用户输入的自定义待模拟地名;
地名判断模块,用于判断所述自定义待模拟地名是否在所述待模拟地名列表中;
地名检测模块,用于在所述自定义待模拟地名不在所述待模拟地名列表中的情况下,检测所述小程序是否显示当前定位至默认地名信息表征的地名。
可选地,所述信息更改模块包括:
响应解析子模块,用于对所述定位响应信息进行解析,确定所述定位响应信息中的地名参数,所述地名参数包括地名标识和/或地名;
参数更改子模块,用于将所述地名参数的值更改为表征所述目标待模拟地名对应的地名信息的值。
可选地,所述装置还包括:
响应信息存储模块,用于存储所述定位响应信息;
所述请求检测模块还用于:检测所述用户终端上运行的小程序是否再次发出携带经纬度信息的定位请求;
所述请求拦截模块还用于:在检测到所述小程序再次发出的定位请求时,拦截该定位请求;
所述地名确定模块还用于:从所述待模拟地名列表包括的多个待模拟地名中,确定下一个目标待模拟地名;
所述信息更改模块还用于:将存储的所述定位响应信息中的原始地名信息更改为所述下一个目标待模拟地名对应的地名信息,并将所述下一个目标待模拟地名对应的地名信息返回给所述小程序,以使所述小程序显示所述下一个目标待模拟地名。
第三方面,本发明实施例另外提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如前第一方面所述的基于小程序模拟定位的方法的步骤。
第四方面,本发明实施例另外提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前第一方面所述的基于小程序模拟定位的方法的步骤。
在本发明实施例中,在用户终端和定位服务器之间部署代理服务器,当用户终端上运行的小程序通过宿主程序提供的接口获取到用户当前所在位置的经纬度,并向定位服务器发送定位请求后,代理服务器拦截并转发该定位请求。然后代理服务器接收定位服务器返回的定位响应信息,并根据用户设置的待模拟地名列表,将定位响应信息中的原始地名信息(即当前所在位置的地名信息)更改为待模拟地名列表中的一个待模拟地名的地名信息。最后代理服务器将更改后的地名信息返回给小程序,使得小程序模拟定位至该待模拟地名所对应的地理区域,并显示该待模拟地名。采用本发明实施例提供的上述基于小程序模拟定位的方法,可以自动地实现小程序对各个地理区域的模拟定位,有效提高模拟定位速率,进而帮助提升小程序测试效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中的一种模拟定位系统的示意图;
图2是本发明实施例中一种基于小程序模拟定位的方法的步骤流程图;
图3是本发明另一实施例中一种基于小程序模拟定位的方法的交互示意图;
图4是本发明实施例中一种基于小程序模拟定位的装置的示意图;
图5是本发明实施例中的一种电子设备的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
相关技术中,小程序是一种无需下载安装即可使用的应用程序,用户通过宿主程序查找到目标小程序,并进入该目标小程序以获得相应的服务。某些小程序在向用户提供服务之前,需要预先确定用户的定位区域,然后根据用户定位区域对应的数据处理参数,为用户提供预期服务。
软件测试人员在对这类依赖于用户定位的小程序进行测试时,通常需要针对多个定位区域分别进行测试,旨在确保小程序在定位至不同区域时,均能提供用户期望的服务。在测试期间,为了模拟不同的定位区域,测试人员需要手动地点击终端设备的用户界面上显示的更改按键,手动选择或输入目标区域,从而将小程序的定位区域更改为该目标区域。然而由于这种模拟定位的方式依赖于人的手动操作,模拟定位的速率较低,影响测试进度。
参考图1,图1是本发明实施例中的一种模拟定位系统的示意图。为了提高模拟定位速率,如图1所示,本发明的发明人提出,在用户终端和定位服务器之间部署代理服务器,当用户终端上运行的小程序通过宿主程序提供的接口获取到用户当前所在位置的经纬度,并向定位服务器发送定位请求后,代理服务器拦截并转发该定位请求。定位服务器接收到代理服务器转发的定位请求后,根据该定位请求中携带的经纬度信息,确定该经纬度信息对应的原始地名信息。定位服务器将该原始地名信息封装为定位响应信息,返回给代理服务器。然后代理服务器接收定位服务器返回的定位响应信息,从待模拟地名列表中确定一个目标待模拟地名,并将定位响应信息中的原始地名信息(即当前所在位置的地名信息)更改为该目标待模拟地名对应的地名信息。最后代理服务器将更改后的地名信息返回给小程序,使得小程序模拟定位至该目标待模拟地名所对应的地理区域,并显示该目标待模拟地名。
其中,代理服务器可部署在用户终端侧或定位服务器侧,也可以作为单独的一侧部署。
优选地,将代理服务器部署在用户终端侧。具体的部署方式可以是:在用户终端侧设置代理模块,该代理模块指向PC电脑的IP地址,该PC电脑上安装有代理工具,例如Charles代理工具,通过该代理工具可以实现图1中代理服务器的功能。本实施例中,通过在用户终端侧设置代理服务器,可以不必在模拟定位前对小程序和定位服务器的代码进行修改,小程序和定位服务器作为被测对象,本身没有发生变化,因此测试结果更加真实。
参照图2,图2是本发明实施例中一种基于小程序模拟定位的方法的步骤流程图,该方法应用于代理服务器。如图2所示,该方法包括以下步骤:
步骤S11:检测所述用户终端上运行的小程序是否发出携带经纬度信息的定位请求,所述定位请求用于请求所述定位服务器根据所述经纬度信息确定对应的地名信息。
本实施例中,定位请求中的经纬度信息是小程序在步骤S11之前,预先通过宿主程序提供的接口而获取到的。如图1所示,小程序可通过宿主程序提供的接口向宿主程序的后端请求经纬度信息,宿主程序的后端响应于小程序的请求,向小程序返回用户当前位置的经纬度信息。
本实施例中,经纬度信息对应的地名信息可以是地理区域的名称,例如“北京”、“beijing”等。经纬度信息对应的地名信息也可以是地理区域的编号,例如编号“1”代表北京,“3”代表广州。如果地名信息是地理区域的编号,则小程序中最好预存有各个编号与各个名称之间的对应关系。比如当小程序接收到的定位响应信息中包含的地名信息是“3”时,小程序可根据预存的对应关系,确定地名信息“3”对应的名称为“广州”,如此可定位至广州,并在用户界面上显示“广州”字样。
本实施例中,定位服务器可以根据经纬度信息映射出该经纬度信息对应的地名信息。例如当定位服务器从小程序发送的定位请求中解析出,该定位请求中携带的经纬度信息是“东经30.67度,北纬104.07度”时,定位服务器可根据该经纬度信息,映射出对应的地名信息是“成都”,或者映射出对应的地名信息是“6”(编号6对应名称“成都”)。
步骤S12:在检测到所述小程序发出的定位请求时,拦截所述定位请求。
本实施例中,代理服务器拦截定位请求后,可以对该定位请求进行重新封装。本发明中,代理服务器对定位请求的封装方式可以有多种选择,本申请对此不做限定。
步骤S13:将所述定位请求发送给所述定位服务器。
步骤S14:接收所述定位服务器返回的定位响应信息,所述定位响应信息携带所述定位服务器确定的对应于所述经纬度信息的原始地名信息。
在本发明实施期间,通常情况下,小程序通过宿主程序请求到的经纬度信息是用户当前所在位置的经纬度信息,如此,该经纬度信息对应的原始地名信息为用户当前所在位置的地名信息。
本实施例中,定位服务器返回的定位响应信息中可以包括形如json数组的数据,其中json数组作为经纬度信息对应的原始地名信息。示例地,定位响应信息中包括的json数组形如{"data":"{\"area\":\"1\",\"cityName\":\"北京\",\"cityId\":1,\"dispCityId\":1}","msg":"succeed","code":0},该原始地名信息(json数组)中同时包括城市名称cityName和城市标识cityId这两种地名参数。其中城市名称cityName对应的值是“北京”,城市标识cityId对应的值是“1”。
步骤S15:依次从待模拟地名列表包括的多个待模拟地名中,确定一个目标待模拟地名,所述待模拟地名列表是用户设置的。
考虑到在对这类依赖于用户定位的小程序进行测试时,通常需要针对多个定位区域分别进行测试。为了达到提高测试效率的目的,同时为了提高对各个城市、区域的测试覆盖率,本实施例中,代理服务器可以在测试任务(即连续对多个地理区域的模拟定位任务)开始之前,接收用户输入的待模拟地名列表,所述待模拟地名列表中包括多个待模拟地名。在执行所述步骤S15时,代理服务器可以依次从所述待模拟地名列表包括的多个待模拟地名中,确定一个目标待模拟地名,然后针对该目标待模拟地名所对应的地理区域进行模拟定位,如下述步骤S16。
示例地,假设用户输入的待模拟地名列表如表1所示,表1中包括各个待模拟地名的城市名称cityName和城市编号cityId。
表1待模拟地名列表
城市名称cityName | 城市编号cityId |
上海 | 2 |
广州 | 3 |
深圳 | 4 |
成都 | 5 |
杭州 | 6 |
在测试任务期间,代理服务器首先将上海作为目标待模拟地名,将原始地名信息更改为上海对应的目标地名信息,然后将该目标地名信息返回给小程序,使得小程序在定位至上海后,开展测试流程。测试流程结束后,代理服务器再将广州作为目标待模拟地名,将原始地名信息更改为广州对应的目标地名信息,然后将该目标地名信息返回给小程序,使得小程序在定位至广州后,开展测试流程。如此,重复执行上述动作,从而快速地对待模拟地名列表中包括的多个待模拟地名各自对应的地理区域进行模拟定位。
步骤S16:将所述原始地名信息更改为所述目标待模拟地名对应的地名信息,并将所述目标待模拟地名对应的地名信息返回给所述小程序,以使所述小程序显示所述目标待模拟地名。
本实施例中,目标待模拟地名对应的地名信息可以是地理区域的名称,例如“北京”、“beijing”等。目标待模拟地名对应的地名信息也可以是地理区域的编号,例如编号“1”代表北京,“3”代表广州。如果地名信息是地理区域的编号,则小程序中最好预存有各个编号与各个名称之间的对应关系。比如当小程序接收到的定位响应信息中包含的地名信息是“3”时,小程序可根据预存的对应关系,确定地名信息“3”对应的名称为“广州”,如此可定位至广州,并在用户界面上显示“广州”字样。
本实施例中,为了将原始地名信息更改为目标待模拟地名对应的地名信息,一种可实施的方式是:
步骤S15-1:对所述定位响应信息进行解析,确定所述定位响应信息中的地名参数,所述地名参数包括地名标识和/或地名;
步骤S15-2:将所述地名参数的值更改为表征所述目标待模拟地名对应的地名信息的值。
其中,代理服务器对定位响应信息进行解析,从地名响应中获取原始地名信息。然后根据原始地名信息的数据规则,从原始地名信息中确定地名参数,然后将该地名参数的值更改为表征第一目标地名信息的值。
沿用上述示例,假设通过上述步骤S15,从待模拟地名列表中确定的目标待模拟地名是上海,代理服务器从定位响应信息中解析出的原始地名信息是{"data":"{\"area\":\"1\",\"cityName\":\"北京\",\"cityId\":1,\"dispCityId\":1}","msg":"succeed","code":0}。然后根据数据规则,确定出其中包括城市名称cityName和城市标识cityId这两种地名参数,其中城市名称cityName对应的值是“北京”,城市标识cityId对应的值是“1”。最后将这两种地名参数的值更改为目标待模拟地名对应的值,更改后形成的目标待模拟地名的地名信息是{"data":"{\"area\":\"1\",\"cityName\":\"上海\",\"cityId\":2,\"dispCityId\":1}","msg":"succeed","code":0}。其中,更改后的地名信息中城市名称cityName对应的值是“上海”,城市标识cityId对应的值是“2”。
其中,所述数据规则可以是:将json数组中关键字“cityName”对应的值确定为城市名称参数,将json数组中关键字“cityId”对应的值确定为城市标识参数。
应当理解的,本发明中,定位响应信息中原始地名信息的形式并不局限于上述示例,对原始地名信息的修改方式也并不局限于上述示例,上述示例仅作为多种可实施方式中的一种举例,不应理解为对本发明的限定。
通过执行上述包括步骤S11至步骤S16的基于小程序模拟定位的方法,在用户终端和定位服务器之间部署代理服务器,当用户终端上运行的小程序通过宿主程序提供的接口获取到用户当前所在位置的经纬度,并向定位服务器发送定位请求后,代理服务器拦截并转发该定位请求。然后代理服务器接收定位服务器返回的定位响应信息,并根据用户设置的待模拟地名列表,将定位响应信息中的原始地名信息(即当前所在位置的地名信息)更改为待模拟地名列表中的一个待模拟地名的地名信息。最后代理服务器将更改后的地名信息返回给小程序,使得小程序模拟定位至该待模拟地名所对应的地理区域,并显示该待模拟地名。该方法可以自动地实现小程序对各个地理区域的模拟定位,有效提高模拟定位速率,进而帮助提升小程序测试效率。
此外,为了在小程序实现模拟定位后,进一步对小程序的提示弹窗进行测试,本发明在将所述目标待模拟地名对应的地名信息返回给所述小程序之后,还可以执行以下步骤:
步骤S17-1:检测所述小程序当前显示的页面上的地名;
步骤S17-2:在所述小程序当前显示的页面上的地名不同于所述目标待模拟地名的情况下,检测所述小程序当前显示的页面上是否弹出提示弹窗,所述提示弹窗用于提示用户切换至所述目标待模拟地名。
本实施例中,在小程序当前显示的页面上的地名不同于目标待模拟地名的情况下,如果小程序当前显示的页面上弹出提示弹窗,并且该提示弹窗用于提示用户切换至目标待模拟地名,则确定小程序的提示弹窗功能正常;否则,确定小程序的提示弹窗功能不正常。
示例地,假设小程序当前显示的页面上的地名是北京,通过步骤S11至步骤S16,小程序接收到的目标待模拟地名对应的地名信息表征广州,则需要检测小程序当前显示的页面上是否弹出提示弹窗,并且检测该提示弹窗是否用于提示用户切换至广州。
示例地,代理服务器在将第一目标地名信息返回给小程序之后,可以控制用户终端对用户界面执行快照操作,代理服务器获取到快照图像后,检测该图像中是否存在提示弹窗,并对提示弹窗中的文字进行识别,以检测该提示弹窗是否用于提示用户切换至所述目标待模拟地名。
通过执行上述步骤S17-1和步骤S17-2,可以实现对小程序的提示弹窗功能的检测。
此外,考虑到小程序可能包括多个子功能页面,每个子功能页面上可能具有用于显示定位区域的当前定位区域显示界面,为了进一步对子功能页面的当前定位区域显示界面进行检测,本发明在检测所述小程序当前显示的页面上是否弹出提示弹窗之后,还可以执行以下步骤:
步骤S17-3:在所述小程序当前显示的页面上弹出所述提示弹窗的情况下,检测用户的确认操作,所述确认操作用于指示切换至所述目标待模拟地名;
步骤S17-4:检测所述小程序的子功能页面是否显示当前定位至所述目标待模拟地名。
本实施例中,在检测到用户的确认操作后,如果进而检测到小程序子功能页面中当前定位区域显示界面所显示的地名切换至目标待模拟地名,则确定小程序子功能页面中的当前定位区域显示界面正常;否则,确定小程序子功能页面中的当前定位区域显示界面不正常。
示例地,假设小程序当前定位区域是北京,通过步骤S11至步骤S17-2,小程序弹出提示弹窗,该提示弹窗用于提示用户是否切换至广州,当用户点击确认切换后,检测该小程序的子功能页面中的当前定位区域显示界面是否显示“广州”字样。
示例地,代理服务器在检测到用户的确认操作后,可以控制用户终端对用户界面执行快照操作,代理服务器获取到快照图像后,对该快照图像中的前定位区域显示界面进行文字识别,以检测当前定位区域显示界面是否具有“广州”字样。
通过执行上述步骤S17-3和步骤S17-4,可以实现对小程序子功能页面的当前定位区域显示界面的检测。
此外,考虑到小程序的某些子功能会根据不同的定位区域,确定不同的数据处理参数,从而为用户提供与定位区域相对应的服务。以用于计算个税的子功能为例,该子功能需要根据小程序的定位城市,确定该城市对应的社保缴纳比例,最后根据起征点、税率以及确定出的社保缴纳比例等数据处理参数,为定位至该城市的用户计算对应的个税。
基于上述考虑,为了进一步对小程序的子功能进行检测,本发明在将所述目标待模拟地名对应的地名信息返回给所述小程序之后,还可以执行以下步骤:
步骤S18-1:在所述小程序当前显示的页面上的地名不同于所述目标待模拟地名的情况下,获取所述目标待模拟地名对应的地名信息的数据处理参数;
步骤S18-2:检测所述小程序是否加载所述目标待模拟地名对应的地名信息的数据处理参数,以按照所述目标待模拟地名对应的地名信息的数据处理参数进行数据处理。
以用于计算个税的子功能为例,假设小程序当前显示的页面上的地名是北京,经过步骤S11至步骤S16后,小程序接收到的目标待模拟地名对应的地名信息表征广州,使得小程序的当前定位切换至广州。此时,获取广州对应的数据处理参数,即社保缴纳比例。然后在测试人员输入工资数据后,检测该子功能是否按照广州的社保缴纳比例进行个税计算。如果是,则确定该子功能运行正常,如果不是,则确定该子功能运行不正常。
通过执行步骤S18-1和步骤S18-2,可以实现对小程序子功能运行状态的检测。
此外,考虑到某些小程序在向用户提供手动切换定位的功能时,允许用户手动输入目标城市,然后小程序将当前定位切换至用户输入的目标城市。在某些情况下,用户输入的目标城市可能不在小程序的覆盖范围内,比如用户输入的目标城市可能是国外城市或偏远小城市。此时,小程序的理想应对方式可以是重新定位至默认城市,如北京,并显示默认城市。
基于上述考虑,为了在用户输入的目标城市不在小程序的覆盖范围内的情况下,进一步对小程序的应对方式进行检测,本发明还可以执行以下步骤:
步骤S19-1:接收用户输入的自定义待模拟地名;
步骤S19-2:判断所述自定义待模拟地名是否在所述待模拟地名列表中;
步骤S19-3:在所述自定义待模拟地名不在所述待模拟地名列表中的情况下,检测所述小程序是否显示当前定位至默认地名信息表征的地名。
示例地,假设在测试小程序期间,用户手动地向运行有代理工具的PC电脑输入自定义待模拟城市“图卢兹”,但是该城市不在上述表1所示的待模拟地名列表中。于是需要检测小程序是否显示默认地名信息表征的地名,如北京。如果小程序切换定位至北京,并显示北京,则确定小程序的应对方式正常;否则,确定小程序的应对方式不正常。
通过执行步骤S19-1至步骤S19-3,可以在用户输入的目标城市不在小程序的覆盖范围内的情况下,实现对小程序的应对方式的检测。
此外,参考图3,图3是本发明另一实施例中一种基于小程序模拟定位的方法的交互示意图。如图3所示,在模拟定位期间,代理服务器针对小程序发出的第一个定位请求,可以通过执行上述步骤S11至步骤S16,向小程序返回更改后的地名信息,使得小程序模拟定位于目标待模拟地名所对应的地理区域。
考虑到代理服务器在经过步骤S14至步骤S16后,已经获取到定位服务器返回的定位响应信息,并从中解析出原始地名信息。基于该考虑,为了进一步提高模拟定位速率,从而提升小程序测试效率,如图3所示,本发明还可以执行以下步骤:
步骤S20-1:在接收所述定位服务器返回的定位响应信息之后,存储所述定位响应信息;
步骤S20-2:检测所述用户终端上运行的小程序是否再次发出携带经纬度信息的定位请求;
步骤S20-3:在检测到所述小程序再次发出的定位请求时,拦截该定位请求;
步骤S20-4:从所述待模拟地名列表包括的多个待模拟地名中,确定下一个目标待模拟地名;
步骤S20-5:将存储的所述定位响应信息中的原始地名信息更改为所述下一个目标待模拟地名对应的地名信息,并将所述下一个目标待模拟地名对应的地名信息返回给所述小程序,以使所述小程序显示所述下一个目标待模拟地名。
本实施例中,当代理服务器检测到小程序发出第二次或后续次数的定位请求时,在拦截该定位请求后,可以直接针对已接收并存储的定位响应信息进行修改。具体地,将该定位响应信息中的原始地名信息更改为待模拟地名列表中的下一个目标待模拟地名对应的地名信息,并将下一个目标待模拟地名对应的地名信息返回给小程序,使得小程序模拟定位至下一个目标待模拟地名。
沿用上述表1示例,在小程序完成对目标待模拟地名“上海”的模拟定位后,小程序再次发出定位请求时,代理服务器拦截该请求。代理服务器按照表1所示的待模拟地名列表的顺序,确定“广州”为下一个目标待模拟地名,并直接针对原始地名信息{"data":"{\"area\":\"1\",\"cityName\":\"北京\",\"cityId\":1,\"dispCityId\":1}","msg":"succeed","code":0}进行更改,更改后的地名信息是{"data":"{\"area\":\"1\",\"cityName\":\"广州\",\"cityId\":3,\"dispCityId\":1}","msg":"succeed","code":0}。代理服务器将该修改后的地名信息返回给小程序,使得小程序模拟定位至广州。
通过执行上述步骤S20-1至步骤S20-5,针对小程序发出第二次或后续次数的定位请求,代理服务器可以在不访问定位服务器的情况下,直接针对第一次定位请求所对应的定位响应信息进行更改,从而进一步显著提高模拟定位速率,进而提升小程序测试效率。
基于同一发明构思,本发明一实施例提供一种基于小程序模拟定位的装置。参考图4,图4是本发明实施例中一种基于小程序模拟定位的装置的示意图。如图4所示,该装置包括:
请求检测模块41,用于检测所述用户终端上运行的小程序是否发出携带经纬度信息的定位请求,所述定位请求用于请求所述定位服务器根据所述经纬度信息确定对应的地名信息;
请求拦截模块42,用于在检测到所述小程序发出的定位请求时,拦截所述定位请求;
请求发送模块43,用于将所述定位请求发送给所述定位服务器;
响应接收模块44,用于接收所述定位服务器返回的定位响应信息,所述定位响应信息携带所述定位服务器确定的对应于所述经纬度信息的原始地名信息;
地名确定模块45,用于依次从待模拟地名列表包括的多个待模拟地名中,确定一个目标待模拟地名,所述待模拟地名列表是用户设置的;
信息更改模块46,用于将所述原始地名信息更改为所述目标待模拟地名对应的地名信息,并将所述目标待模拟地名对应的地名信息返回给所述小程序,以使所述小程序显示所述目标待模拟地名。
可选地,所述装置还包括:
地名检测模块,用于在将所述目标待模拟地名对应的地名信息返回给所述小程序之后,检测所述小程序当前显示的页面上的地名;
弹窗检测模块,用于在所述小程序当前显示的页面上的地名不同于所述目标待模拟地名的情况下,检测所述小程序当前显示的页面上是否弹出提示弹窗,所述提示弹窗用于提示用户切换至所述目标待模拟地名。
可选地,所述装置还包括:
操作检测模块,用于在检测所述小程序当前显示的页面上是否弹出提示弹窗之后,并在所述小程序当前显示的页面上弹出所述提示弹窗的情况下,检测用户的确认操作,所述确认操作用于指示切换至所述目标待模拟地名;
所述地名检测模块还用于检测所述小程序的子功能页面是否显示当前定位至所述目标待模拟地名。
可选地,所述装置还包括:
参数获取模块,用于在将所述目标待模拟地名对应的地名信息返回给所述小程序之后,并在所述小程序当前显示的页面上的地名不同于所述目标待模拟地名的情况下,获取所述目标待模拟地名对应的地名信息的数据处理参数;
参数检测模块,用于检测所述小程序是否加载所述目标待模拟地名对应的地名信息的数据处理参数,以按照所述目标待模拟地名对应的地名信息的数据处理参数进行数据处理。
可选地,所述装置还包括:
地名接收模块,用于接收用户输入的自定义待模拟地名;
地名判断模块,用于判断所述自定义待模拟地名是否在所述待模拟地名列表中;
地名检测模块,用于在所述自定义待模拟地名不在所述待模拟地名列表中的情况下,检测所述小程序是否显示当前定位至默认地名信息表征的地名。
可选地,所述信息更改模块包括:
响应解析子模块,用于对所述定位响应信息进行解析,确定所述定位响应信息中的地名参数,所述地名参数包括地名标识和/或地名;
参数更改子模块,用于将所述地名参数的值更改为表征所述目标待模拟地名对应的地名信息的值。
可选地,所述装置还包括:
响应信息存储模块,用于存储所述定位响应信息;
所述请求检测模块还用于:检测所述用户终端上运行的小程序是否再次发出携带经纬度信息的定位请求;
所述请求拦截模块还用于:在检测到所述小程序再次发出的定位请求时,拦截该定位请求;
所述地名确定模块还用于:从所述待模拟地名列表包括的多个待模拟地名中,确定下一个目标待模拟地名;
所述信息更改模块还用于:将存储的所述定位响应信息中的原始地名信息更改为所述下一个目标待模拟地名对应的地名信息,并将所述下一个目标待模拟地名对应的地名信息返回给所述小程序,以使所述小程序显示所述下一个目标待模拟地名。
参考图5,图5为实现本发明各个实施例的一种电子设备的硬件结构示意图。
该电子设备500包括但不限于:射频单元501、网络模块502、音频输出单元503、输入单元504、传感器505、显示单元506、用户输入单元507、接口单元508、存储器509、处理器510、以及电源511等部件。本领域技术人员可以理解,图5中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,电子设备包括但不限于手机、台式电脑、平板电脑、笔记本电脑、掌上电脑等。
应理解的是,本发明实施例中,射频单元501可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器510处理;另外,将上行的数据发送给基站。通常,射频单元501包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元501还可以通过无线通信系统与网络和其他设备通信。
电子设备通过网络模块502为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
音频输出单元503可以将射频单元501或网络模块502接收的或者在存储器509中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元503还可以提供与电子设备500执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元503包括扬声器、蜂鸣器以及受话器等。
输入单元504用于接收音频或视频信号。输入单元504可以包括图形处理器(Graphics Processing Unit,GPU)5041和麦克风5042,图形处理器5041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元506上。经图形处理器5041处理后的图像帧可以存储在存储器509(或其它存储介质)中或者经由射频单元501或网络模块502进行发送。麦克风5042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元501发送到移动通信基站的格式输出。
电子设备500还包括至少一种传感器505,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板5061的亮度,接近传感器可在电子设备500移动到耳边时,关闭显示面板5061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别电子设备姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器505还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
显示单元506用于显示由用户输入的信息或提供给用户的信息。显示单元506可包括显示面板5061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板5061。
用户输入单元507可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元507包括触控面板5071以及其他输入设备5072。触控面板5071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板5071上或在触控面板5071附近的操作)。触控面板5071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器510,接收处理器510发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板5071。除了触控面板5071,用户输入单元507还可以包括其他输入设备5072。具体地,其他输入设备5072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
进一步的,触控面板5071可覆盖在显示面板5061上,当触控面板5071检测到在其上或附近的触摸操作后,传送给处理器510以确定触摸事件的类型,随后处理器510根据触摸事件的类型在显示面板5061上提供相应的视觉输出。虽然在图5中,触控面板5071与显示面板5061是作为两个独立的部件来实现电子设备的输入和输出功能,但是在某些实施例中,可以将触控面板5071与显示面板5061集成而实现电子设备的输入和输出功能,具体此处不做限定。
接口单元508为外部装置与电子设备500连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元508可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到电子设备500内的一个或多个元件或者可以用于在电子设备500和外部装置之间传输数据。
存储器509可用于存储软件程序以及各种数据。存储器509可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器509可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器510是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器509内的软件程序和/或模块,以及调用存储在存储器509内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。处理器510可包括一个或多个处理单元;优选的,处理器510可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器510中。
电子设备500还可以包括给各个部件供电的电源511(比如电池),优选的,电源511可以通过电源管理系统与处理器510逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
另外,电子设备500包括一些未示出的功能模块,在此不再赘述。
优选的,本发明实施例还提供了一种电子设备,包括:处理器510,存储器509,存储在存储器509上并可在处理器510上运行的计算机程序,该计算机程序被处理器510执行时实现上述基于小程序模拟定位的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述基于小程序模拟定位的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random AccessMemory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
本领域普通技术人员可以意识到,结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (9)
1.一种基于小程序模拟定位的方法,其特征在于,应用于代理服务器,所述代理服务器部署在用户终端和定位服务器之间,所述方法包括:
检测所述用户终端上运行的小程序是否发出携带经纬度信息的定位请求,所述定位请求用于请求所述定位服务器根据所述经纬度信息确定对应的地名信息;
在检测到所述小程序发出的定位请求时,拦截所述定位请求;
将所述定位请求发送给所述定位服务器;
接收所述定位服务器返回的定位响应信息,所述定位响应信息携带所述定位服务器确定的对应于所述经纬度信息的原始地名信息;
依次从待模拟地名列表包括的多个待模拟地名中,确定一个目标待模拟地名,所述待模拟地名列表是用户设置的;
将所述原始地名信息更改为所述目标待模拟地名对应的地名信息,并将所述目标待模拟地名对应的地名信息返回给所述小程序,以使所述小程序显示所述目标待模拟地名;
在接收所述定位服务器返回的定位响应信息之后,所述方法还包括:
存储所述定位响应信息;
检测所述用户终端上运行的小程序是否再次发出携带经纬度信息的定位请求;
在检测到所述小程序再次发出的定位请求时,拦截该定位请求;
从所述待模拟地名列表包括的多个待模拟地名中,确定下一个目标待模拟地名;
将存储的所述定位响应信息中的原始地名信息更改为所述下一个目标待模拟地名对应的地名信息,并将所述下一个目标待模拟地名对应的地名信息返回给所述小程序,以使所述小程序显示所述下一个目标待模拟地名。
2.根据权利要求1所述的方法,其特征在于,在将所述目标待模拟地名对应的地名信息返回给所述小程序之后,所述方法还包括:
检测所述小程序当前显示的页面上的地名;
在所述小程序当前显示的页面上的地名不同于所述目标待模拟地名的情况下,检测所述小程序当前显示的页面上是否弹出提示弹窗,所述提示弹窗用于提示用户切换至所述目标待模拟地名。
3.根据权利要求2所述的方法,其特征在于,在检测所述小程序当前显示的页面上是否弹出提示弹窗之后,所述方法还包括:
在所述小程序当前显示的页面上弹出所述提示弹窗的情况下,检测用户的确认操作,所述确认操作用于指示切换至所述目标待模拟地名;
检测所述小程序的子功能页面是否显示当前定位至所述目标待模拟地名。
4.根据权利要求2或3所述的方法,其特征在于,在将所述目标待模拟地名对应的地名信息返回给所述小程序之后,所述方法还包括:
在所述小程序当前显示的页面上的地名不同于所述目标待模拟地名的情况下,获取所述目标待模拟地名对应的地名信息的数据处理参数;
检测所述小程序是否加载所述目标待模拟地名对应的地名信息的数据处理参数,以按照所述目标待模拟地名对应的地名信息的数据处理参数进行数据处理。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收用户输入的自定义待模拟地名;
判断所述自定义待模拟地名是否在所述待模拟地名列表中;
在所述自定义待模拟地名不在所述待模拟地名列表中的情况下,检测所述小程序是否显示当前定位至默认地名信息表征的地名。
6.根据权利要求1所述的方法,其特征在于,将所述原始地名信息更改为目标待模拟地名对应的地名信息,包括:
对所述定位响应信息进行解析,确定所述定位响应信息中的地名参数,所述地名参数包括地名标识和/或地名;
将所述地名参数的值更改为表征所述目标待模拟地名对应的地名信息的值。
7.一种基于小程序模拟定位的装置,其特征在于,应用于代理服务器,所述代理服务器部署在用户终端和定位服务器之间,所述装置包括:
请求检测模块,用于检测所述用户终端上运行的小程序是否发出携带经纬度信息的定位请求,所述定位请求用于请求所述定位服务器根据所述经纬度信息确定对应的地名信息;
请求拦截模块,用于在检测到所述小程序发出的定位请求时,拦截所述定位请求;
请求发送模块,用于将所述定位请求发送给所述定位服务器;
响应接收模块,用于接收所述定位服务器返回的定位响应信息,所述定位响应信息携带所述定位服务器确定的对应于所述经纬度信息的原始地名信息;
地名确定模块,用于依次从待模拟地名列表包括的多个待模拟地名中,确定一个目标待模拟地名,所述待模拟地名列表是用户设置的;
信息更改模块,用于将所述原始地名信息更改为所述目标待模拟地名对应的地名信息,并将所述目标待模拟地名对应的地名信息返回给所述小程序,以使所述小程序显示所述目标待模拟地名;
所述装置还包括:
响应信息存储模块,用于存储所述定位响应信息;
所述请求检测模块还用于:检测所述用户终端上运行的小程序是否再次发出携带经纬度信息的定位请求;
所述请求拦截模块还用于:在检测到所述小程序再次发出的定位请求时,拦截该定位请求;
所述地名确定模块还用于:从所述待模拟地名列表包括的多个待模拟地名中,确定下一个目标待模拟地名;
所述信息更改模块还用于:将存储的所述定位响应信息中的原始地名信息更改为所述下一个目标待模拟地名对应的地名信息,并将所述下一个目标待模拟地名对应的地名信息返回给所述小程序,以使所述小程序显示所述下一个目标待模拟地名。
8.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时,实现如权利要求1至6中任一项所述的基于小程序模拟定位的方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1至6中任一项所述的基于小程序模拟定位的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911032657.5A CN110928769B (zh) | 2019-10-28 | 2019-10-28 | 基于小程序模拟定位的方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911032657.5A CN110928769B (zh) | 2019-10-28 | 2019-10-28 | 基于小程序模拟定位的方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110928769A CN110928769A (zh) | 2020-03-27 |
CN110928769B true CN110928769B (zh) | 2023-10-20 |
Family
ID=69849601
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911032657.5A Active CN110928769B (zh) | 2019-10-28 | 2019-10-28 | 基于小程序模拟定位的方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110928769B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112261139B (zh) * | 2020-10-22 | 2024-01-26 | 北京指掌易科技有限公司 | 业务数据采集方法、装置以及电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103148857A (zh) * | 2010-07-30 | 2013-06-12 | 雷虹 | 一种提供信息的方法和系统 |
CN104134145A (zh) * | 2013-05-02 | 2014-11-05 | 北京京东尚科信息技术有限公司 | 收货地址纠错方法及系统 |
CN105704219A (zh) * | 2016-01-19 | 2016-06-22 | 舟山大舟网络科技股份有限公司 | 一种基于位置的本地论坛网站用户注册方法与系统 |
CN106339266A (zh) * | 2016-08-31 | 2017-01-18 | 深圳市金立通信设备有限公司 | 一种虚拟定位方法及终端 |
CN106790622A (zh) * | 2016-12-30 | 2017-05-31 | 广州华多网络科技有限公司 | 模拟器模拟定位方法及装置 |
CN107018491A (zh) * | 2017-03-29 | 2017-08-04 | 联想(北京)有限公司 | 位置数据的处理方法和装置 |
CN107291791A (zh) * | 2016-11-10 | 2017-10-24 | 北京安云世纪科技有限公司 | 一种位置信息分享的方法、装置以及移动终端 |
CN109582556A (zh) * | 2017-09-29 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 一种应用程序在移动终端运行情况的测试方法、装置和系统 |
-
2019
- 2019-10-28 CN CN201911032657.5A patent/CN110928769B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103148857A (zh) * | 2010-07-30 | 2013-06-12 | 雷虹 | 一种提供信息的方法和系统 |
CN104134145A (zh) * | 2013-05-02 | 2014-11-05 | 北京京东尚科信息技术有限公司 | 收货地址纠错方法及系统 |
CN105704219A (zh) * | 2016-01-19 | 2016-06-22 | 舟山大舟网络科技股份有限公司 | 一种基于位置的本地论坛网站用户注册方法与系统 |
CN106339266A (zh) * | 2016-08-31 | 2017-01-18 | 深圳市金立通信设备有限公司 | 一种虚拟定位方法及终端 |
CN107291791A (zh) * | 2016-11-10 | 2017-10-24 | 北京安云世纪科技有限公司 | 一种位置信息分享的方法、装置以及移动终端 |
CN106790622A (zh) * | 2016-12-30 | 2017-05-31 | 广州华多网络科技有限公司 | 模拟器模拟定位方法及装置 |
CN107018491A (zh) * | 2017-03-29 | 2017-08-04 | 联想(北京)有限公司 | 位置数据的处理方法和装置 |
CN109582556A (zh) * | 2017-09-29 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 一种应用程序在移动终端运行情况的测试方法、装置和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110928769A (zh) | 2020-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107943489B (zh) | 数据分享方法及移动终端 | |
CN108574940B (zh) | 一种来电呼叫的处理方法和装置 | |
CN110704328B (zh) | 接口测试方法、装置、电子设备及可读存储介质 | |
CN108668328B (zh) | 一种网络切换方法及移动终端 | |
CN108495349B (zh) | 一种运营商网络的切换方法及移动终端 | |
CN109901761B (zh) | 一种内容显示方法及移动终端 | |
US10298590B2 (en) | Application-based service providing method, apparatus, and system | |
CN111124706A (zh) | 一种应用程序分享方法及电子设备 | |
CN111199424A (zh) | 一种广告投放方法、装置、终端设备及存储介质 | |
CN108009031B (zh) | 一种应用程序的控制方法及移动终端 | |
CN109936817B (zh) | 一种定位方法及终端设备 | |
CN106020945B (zh) | 快捷项添加方法及装置 | |
CN109565464A (zh) | 红包数据处理方法及设备 | |
CN110928769B (zh) | 基于小程序模拟定位的方法、装置、电子设备及存储介质 | |
CN111427644B (zh) | 一种目标行为识别方法及电子设备 | |
CN111209031B (zh) | 一种数据获取方法、装置、终端设备及存储介质 | |
CN111310165B (zh) | 账号切换或注册方法及电子设备 | |
CN111130995B (zh) | 图像控制方法、电子设备及存储介质 | |
CN109660663B (zh) | 一种天线调整方法及移动终端 | |
CN109040457B (zh) | 一种屏幕亮度调节方法及移动终端 | |
CN108391305B (zh) | 一种WiFi热点选择方法及终端设备 | |
CN107995669B (zh) | 一种无线接入点ap信息的显示方法及移动终端 | |
CN116450963A (zh) | 内容的显示处理方法、装置、电子设备及存储介质 | |
CN110908586A (zh) | 一种键盘的显示方法、装置及终端设备 | |
CN108512929B (zh) | 一种代理服务器设置方法及移动终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |