CN107608801B - 原生页面与html5页面通信方法、装置、介质和设备 - Google Patents
原生页面与html5页面通信方法、装置、介质和设备 Download PDFInfo
- Publication number
- CN107608801B CN107608801B CN201710789582.XA CN201710789582A CN107608801B CN 107608801 B CN107608801 B CN 107608801B CN 201710789582 A CN201710789582 A CN 201710789582A CN 107608801 B CN107608801 B CN 107608801B
- Authority
- CN
- China
- Prior art keywords
- information
- page
- preset
- preset information
- html5
- 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
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本公开是关于一种原生页面与HTML5页面通信方法、装置、存储介质和电子设备。该方法包括:采集一应用程序的原生页面所属的第一预设信息,并将所述第一预设信息写入预设控件中;其中,该预设控件用于在所述应用程序内呈现内嵌HTML5页面;从所述预设控件中读取所述应用程序的原生页面所属的所述第一预设信息,并获取所述HTML5页面所属的第二预设信息;由所述HTML5页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息。本公开可以实现内嵌HTML5页面与原生页面的信息关联互通,进而使得采集的用户数据更为全面准确,同时使APP用户数据采集和统计工作更加简单方便。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种原生页面与HTML5(Hyper TextMarkup Language 5)页面通信方法、原生页面与HTML5页面通信装置、以及实现所述原生页面与HTML5页面通信方法的计算机可读存储介质和电子设备。
背景技术
目前随着移动互联网的快速发展,智能终端APP(Application,应用程序)技术得到了比较充分的发展,各个企业开发出来的各种不同的APP数量也快速增长。随之而来的APP用户数据采集和统计工作也变得越来越普遍。
相关技术中,智能终端APP都是采用拥有互相独立的代码的原生页面和内嵌超文本标记语言HTML5页面开发的。因此,如果要对终端设备的用户信息如用户行为日志做全面采集,就需要同时在APP原生页面和HTML5页面进行数据采集。
但是上述数据采集是在独立的两种不同介质中进行的,因此采集的两份如同一用户的用户行为信息之间缺少必要的关联,而原生页面和HTML5页面本身在业务上又有非常强的耦合性,这导致上报采集信息后服务器端也无法将两份数据进行有效关联,使得APP用户数据采集和统计工作困难且采集数据不够全面准确。因此,有必要提供一种新的技术方案改善上述方案中存在的一个或者多个问题。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种原生页面与HTML5页面通信方法、原生页面与HTML5页面通信装置、以及实现所述原生页面与HTML5页面通信方法的计算机可读存储介质和电子设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开实施例的第一方面,提供一种原生页面与HTML5页面通信方法,该方法包括:
采集一应用程序的原生页面所属的第一预设信息,并将所述第一预设信息写入预设控件中;其中,该预设控件用于在所述应用程序内呈现内嵌HTML5页面;
从所述预设控件中读取所述应用程序的原生页面所属的所述第一预设信息,并获取所述HTML5页面所属的第二预设信息;
由所述HTML5页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息。
本公开的一种示例性实施例中,所述预设控件为Webview控件,该Webview控件包括用户代理UA(User Agent);
所述将所述第一预设信息写入预设控件中包括:
将所述第一预设信息以预设数据格式写入所述Webview控件的UA中。
本公开的一种示例性实施例中,所述从所述预设控件中读取所述应用程序的原生页面所属的所述第一预设信息包括:
从所述Webview控件的UA中读取并根据所述预设数据格式解析得到所述第一预设信息。
本公开的一种示例性实施例中,所述第一预设信息和第二预设信息均包括用户唯一标识信息和用户页面访问信息;所述第二预设信息与第一预设信息的所述关联包括各自的所述用户唯一标识信息和用户页面访问信息的共享。
本公开的一种示例性实施例中,所述获取所述HTML5页面所属的第二预设信息包括:
通过所述HTML5页面内的预设js文件获取所述HTML5页面所属的所述第二预设信息。
本公开的一种示例性实施例中,该方法还包括:
通过所述HTML5页面提供的预设通信接口直接调用所述HTML5页面所属的所述第二预设信息;
由所述原生页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息。
本公开的一种示例性实施例中,该方法还包括:
在通过所述HTML5页面提供的预设通信接口直接调用所述HTML5页面所属的所述第二预设信息之前,将所述第二预设信息转换成JSON数据格式的第二预设信息;
通过所述预设通信接口直接调用所述HTML5页面所属的所述JSON数据格式的第二预设信息。
根据本公开实施例的第二方面,提供一种原生页面与HTML5页面通信装置,该装置包括:
第一信息获取模块,用于采集一应用程序的原生页面所属的第一预设信息,并将所述第一预设信息写入预设控件中;其中,该预设控件用于在所述应用程序内呈现内嵌HTML5页面;
第二信息获取模块,用于从所述预设控件中读取所述应用程序的原生页面所属的所述第一预设信息,并获取所述HTML5页面所属的第二预设信息
信息关联上报模块,用于由所述HTML5页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息。
根据本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任意一个实施例中所述原生页面与HTML5页面通信方法的步骤。
根据本公开实施例的第四方面,提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一个实施例中所述原生页面与HTML5页面通信方法的步骤。
本公开的实施例提供的技术方案可以包括以下有益效果:
本公开的一种实施例中,通过上述原生页面与HTML5页面通信方法及装置,采集原生页面的第一预设信息后写入呈现内嵌HTML5页面的预设控件中,在HTML5页面内,直接从所述预设控件中读取原生页面的第一预设信息,同时获取HTML5页面的第二预设信息,再由所述HTML5页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息;这样,一方面,可以实现将APP原生页面的如用户行为信息采集后传递至HTML5页面,再由HTML5页面将原生页面的如用户行为信息和自身HTML5页面的用户行为信息关联上报,实现HTML5页面与原生页面的信息关联互通,进而使得采集的用户数据更为全面准确;另一方面,通过该预设控件传递采集信息,实现简单,整体使得APP用户数据采集和统计工作更加简单方便。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出本公开示例性实施例中原生页面与HTML5页面通信方法流程图;
图2示意性示出本公开示例性实施例中另一原生页面与HTML5页面通信方法流程图;
图3示意性示出本公开示例性实施例中又一原生页面与HTML5页面通信方法流程图;
图4示意性示出本公开示例性实施例中原生页面与HTML5页面通信应用场景示意图;
图5示意性示出本公开示例性实施例中原生页面与HTML5页面通信装置示意图;
图6示意性示出本公开示例性实施例中一种计算机可读存储介质示意图;
图7示意性示出本公开示例性实施例中一种电子设备示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本示例实施方式中首先提供了一种原生页面与HTML5页面通信方法,该方法可以应用于一终端设备,例如可以是手机、平板电脑等移动终端。参考图1中所示,该方法可以包括以下步骤:
步骤S101:采集一应用程序的原生页面所属的第一预设信息,并将所述第一预设信息写入预设控件中;其中,该预设控件用于在所述应用程序内呈现内嵌HTML5页面。
步骤S102:从所述预设控件中读取所述应用程序的原生页面所属的所述第一预设信息,并获取所述HTML5页面所属的第二预设信息。
步骤S103:由所述HTML5页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息。
通过上述原生页面与HTML5页面通信方法,一方面,可以实现将APP原生页面的如用户行为信息采集后传递至HTML5页面,再由HTML5页面将原生页面的如用户行为信息和自身HTML5页面的用户行为信息关联上报,实现HTML5页面与原生页面的信息关联互通,进而使得采集的用户数据更为全面准确;另一方面,通过该预设控件传递采集信息,实现简单,整体使得APP用户数据采集和统计工作更加简单方便。
下面,将参考图1至图4对本示例实施方式中的上述方法的各个步骤进行更详细的说明。
在步骤S101中,采集一应用程序的原生页面所属的第一预设信息,并将所述第一预设信息写入预设控件中;其中,该预设控件用于在所述应用程序内呈现内嵌HTML5页面。
本示例实施方式中,所述应用程序可以是例如手机上的各种手机软件APP。示例性的,所述第一预设信息可以包括但不限于应用程序唯一标识信息(如jdapp)、手机操作系统(如iPhone或者Android)以及系统版本信息、手机浏览器版本号、APP用户唯一标识信息、手机所述的网络环境信息(如WiFi/4G/3G/2G等)、上个页面的标识、用户页面访问信息(如用户访次和访序等)、广告渠道信息等等。本实施例中所述第一预设信息至少包括APP用户唯一标识信息和用户页面访问信息。
在本公开的一种示例性实施例中,所述预设控件可以为Webview控件,所述Webview控件是APP内部的一个原生组件,用于呈现内嵌HTML5页面。该Webview控件至少可以包括用户代理UA(User Agent)。User Agent是Webview控件中一个至少用于存储浏览器信息的介质,User Agent也是超文本传输协议(HTTP,Hyper Text Transfer Protocol)中的一部分,属于头域的组成部分,用于向访问的网站服务器提供用户终端所使用的浏览器类型及版本信息、终端操作系统及版本信息、浏览器内核信息等等。通常,用户使用手机访问一个网站和电脑访问一个网站时终端显示的页面是不一样的,这是网站服务器根据访问者的UA来判断的,通过UA中的这些信息可以使得用户所访问的网页在终端上显示不同的排版从而为用户提供更好的体验或者进行信息统计等。
本示例实施方式中,结合参考图4所示,所述将所述第一预设信息写入预设控件中可以包括:将所述第一预设信息以预设数据格式写入所述Webview控件的UA中。即APP原生页面将原生页面信息采集后写入Webview控件的UA中。
示例性的,写入后所述UA中存储的数据的预设数据格式可以如下所示:
jdapp;iPhone;4.3.0;7.1;7ff475e854f125bceb9c40528243ab45dd899403;network/wifi;pv/5.1。其中各个字段之间用分号“;”进行分割,前面几项每个位置表示固定含义,具体含义如上所述。后面示例性的两个字段中用斜杠“/”再次分割为两部分,两部分分别为名称和对应值。
本示例实施方式中,如图4所示,原生页面信息采集可以包括:采集所述应用程序的原生页面所属的所述第一预设信息可以通过内嵌软件开发工具包SDK(SoftwareDevelopment Kit)直接获取。该APP原生页面内的所有信息都可以通过内嵌SDK直接获取,最终组织成由分号分隔的字符串格式,如上述的预设数据格式。然后可以将采集的信息写入Webview控件的UA中,这样,后续内嵌HTML5页面中的js文件就可以从UA中获得APP原生页面的相关信息了。
在步骤S102中,从所述预设控件中读取所述应用程序的原生页面所属的所述第一预设信息,并获取所述HTML5页面所属的第二预设信息。
示例性的,参考图4,原生页面信息获取,即从所述预设控件中读取所述应用程序的原生页面所属的所述第一预设信息可以包括:从所述Webview控件的UA中读取并根据所述预设数据格式解析得到所述第一预设信息。例如读取解析到APP用户唯一标识信息如7ff475e854f125bceb9c40528243ab45dd899403。又如,在HTML5页面内,可以根据上述预设数据格式以所述名称如network获取对应的值如wifi。
在本公开的一种示例性实施例中,步骤S102中所述获取所述HTML5页面所属的第二预设信息可以包括:通过所述HTML5页面内的预设js(javascript)文件获取所述HTML5页面所属的所述第二预设信息。
示例性的,参考图4所示,HTML5页面信息采集,即HTML5页面中的所有信息都可以通过页面中的js文件直接获取,最终可以组织成如下文所述的JSON格式的第二预设信息。
具体的,所述HTML5页面所属的第二预设信息可以包括但不限于APP用户唯一标识信息、用户访次和访序信息、广告渠道信息、上个页面地址等等。
在步骤S103中,由所述HTML5页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息。
在本公开的一种示例性实施例中,所述用户行为信息可以是用户行为日志。所述第一预设信息和第二预设信息均至少可以包括用户唯一标识信息和用户页面访问信息(如用户访次和访序等)。所述第二预设信息与第一预设信息的所述关联至少包括各自的所述用户唯一标识信息和用户页面访问信息的共享。
示例性的,HTML5页面上报用户行为日志到日志收集服务前,会将所述第二预设信息与所述第一预设信息做必要的关联后再上报。此处所述关联指的例如是共享用户访序信息和APP用户唯一标识信息。用户在APP原生页面中浏览每个页面后访序需要加1,在跳转入内嵌HTML5页面后,内嵌HTML5页面在上报pv日志时需要基于APP原生页面记录的访序继续加1,因此就需要共享访序信息,才能保证上报日志是有序的,后续可以按照访序顺序进行访问路径回溯。
在本公开的另一实施例中,由所述原生页面将所述第二预设信息与所述第一预设信息关联后上报,也即可以实现APP原生页面与内嵌HTML5页面之间的双向信息关联打通。参考图2中所示,在上述各实施例的基础上,本公开的一种示例性实施例中,该方法还可以包括以下步骤:
步骤S201:通过所述HTML5页面提供的预设通信接口直接调用所述HTML5页面所属的所述第二预设信息;
示例性的,如图4所示,HTML5页面信息获取,HTML5页面中的所有信息都可以通过页面中的js文件直接获取,本实施例中HTML5页面中的js提供一个预设通信接口(图未示),APP原生页面可以通过调用这个接口获取HTML5页面的信息。APP本身提供了一种机制可以直接调用内嵌HTML5页面中js提供的方法。例如,HTML5页面中js提供一个接口Mping.EventSeries..getSeries()为APP原生页面提供HTML5页面信息,交互信息可以使用如下的标准JSON数据格式。APP原生页面通过SDK调用此接口即可获取HTML5页面信息。
本实施例中,通过接口调用交互信息,相比直接调用HTML5页面代码的方式,实现简单方便,且不会给页面带来很大负担,对页面性能的消耗影响非常小。
步骤S202:由所述原生页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息。
示例性的,APP原生页面上报用户行为日志到日志收集服务前,会将所述第二预设信息与所述第一预设信息做必要的关联后再上报。此处所述关联指的例如是共享用户访序信息和APP用户唯一标识信息。用户在内嵌HTML5页面中浏览每个页面后访序需要加1,在跳转回APP原生页面后,APP原生页面在上报pv日志时需要基于内嵌HTML5页面记录的访序继续加1,因此就需要共享访序信息,才能保证上报日志是有序的,后续可以按照访序顺序进行访问路径回溯。
参考图3中所示,在上述示例性实施例的基础上,在通过预设通信接口直接调用所述第二预设信息之前,该方法还可以包括以下步骤:
步骤S301:在通过所述HTML5页面提供的预设通信接口直接调用所述HTML5页面所属的所述第二预设信息之前,将所述第二预设信息转换成JSON数据格式的第二预设信息。
示例性的,HTML5页面中的所有信息都可以通过页面中的js文件直接获取,最终可以组织成JSON格式的第二预设信息,便于提高后续数据解析处理效率。
步骤S302:通过所述预设通信接口直接调用所述HTML5页面所属的所述JSON数据格式的第二预设信息。
示例性的,HTML5页面中js提供一个接口,APP原生页面可以通过调用这个接口获取HTML5页面的信息。该接口可以是Mping.EventSeries..getSeries(),其用于为APP原生页面提供HTML5页面信息,交互信息可以使用JSON数据格式。
本示例实施方式中的上述方法可以实现将APP原生页面的如用户行为信息采集后通过预设控件传递至HTML5页面,再由HTML5页面将原生页面的如用户行为信息和自身HTML5页面的用户行为信息关联上报,实现HTML5页面与原生页面的信息关联互通,进而使得采集的用户数据更为全面准确;另外,通过该预设控件传递采集信息,实现简单,对页面性能影响小,整体使得APP用户数据采集和统计工作更加简单方便。
需要说明的是,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。另外,也易于理解的是,这些步骤可以是例如在多个模块/进程/线程中同步或异步执行。
进一步的,本示例实施方式中,还提供了一种原生页面与HTML5页面通信装置。参考图5中所示,装置500可以包括第一信息获取模块501、第二信息获取模块502和信息关联上报模块503。其中:
所述第一信息获取模块501,用于采集一应用程序的原生页面所属的第一预设信息,并将所述第一预设信息写入预设控件中;其中,该预设控件用于在所述应用程序内呈现内嵌HTML5页面。
所述第二信息获取模块502,用于从所述预设控件中读取所述应用程序的原生页面所属的所述第一预设信息,并获取所述HTML5页面所属的第二预设信息。
所述信息关联上报模块503,用于由所述HTML5页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息。
在本公开的一种示例性实施例中,所述预设控件可以为Webview控件,该Webview控件可以包括用户代理UA(User Agent)。相应的,所述第一信息获取模块501,可以用于将所述第一预设信息以预设数据格式写入所述Webview控件的UA中。
在本公开进一步的一种示例性实施例中,所述第二信息获取模块502,可以用于从所述Webview控件的UA中读取并根据所述预设数据格式解析得到所述第一预设信息。
在本公开的示例性实施例中,所述第一预设信息和第二预设信息均至少可以包括用户唯一标识信息和用户页面访问信息。而所述第二预设信息与第一预设信息的所述关联至少包括各自的所述用户唯一标识信息和用户页面访问信息的共享。
在本公开的一种示例性实施例中,所述所述第二信息获取模块502,可以用于通过所述HTML5页面内的预设js文件获取所述HTML5页面所属的所述第二预设信息。
本公开的一种示例性实施例中,该装置500还可以包括第三信息获取模块(图未示),用于通过所述HTML5页面提供的预设通信接口直接调用所述HTML5页面所属的所述第二预设信息,再由所述原生页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息。
本公开的一种示例性实施例中,该装置500还可以包括信息转换模块(图未示),用于在通过所述HTML5页面提供的预设通信接口直接调用所述HTML5页面所属的所述第二预设信息之前,将所述第二预设信息转换成JSON数据格式的第二预设信息。所述第三信息获取模块还可以用于通过所述预设通信接口直接调用所述HTML5页面所属的所述JSON数据格式的第二预设信息。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。作为模块或单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现木公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被例如处理器执行时可以实现上述任意一个实施例中所述原生页面与HTML5页面通信方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述原生页面与HTML5页面通信方法部分中描述的根据本发明各种示例性实施方式的步骤。
参考图6所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品60,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
在本公开的示例性实施例中,还提供一种电子设备,该电子设备可以包括处理器,以及用于存储所述处理器的可执行指令的存储器。其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一个实施例中所述原生页面与HTML5页面通信方法的步骤。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图7来描述根据本发明的这种实施方式的电子设备600。图7显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,电子设备600以通用计算设备的形式表现。电子设备600的控件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同系统控件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述原生页面与HTML5页面通信方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示的步骤。
所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述原生页面与HTML5页面通信方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
Claims (9)
1.一种原生页面与HTML5页面通信方法,其特征在于,该方法包括:
采集一应用程序的原生页面所属的第一预设信息,并将所述第一预设信息写入预设控件中;其中,该预设控件用于在所述应用程序内呈现内嵌HTML5页面;
从所述预设控件中读取所述应用程序的原生页面所属的所述第一预设信息,并获取所述HTML5页面所属的第二预设信息;
由所述HTML5页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息;
所述第一预设信息和第二预设信息均至少包括用户唯一标识信息和用户页面访问信息;所述第二预设信息与第一预设信息的所述关联至少包括各自的所述用户唯一标识信息和用户页面访问信息的共享。
2.根据权利要求1所述原生页面与HTML5页面通信方法,其特征在于,所述预设控件为Webview控件,该Webview控件包括用户代理UA;
所述将所述第一预设信息写入预设控件中包括:
将所述第一预设信息以预设数据格式写入所述Webview控件的UA中。
3.根据权利要求2所述原生页面与HTML5页面通信方法,其特征在于,所述从所述预设控件中读取所述应用程序的原生页面所属的所述第一预设信息包括:
从所述Webview控件的UA中读取并根据所述预设数据格式解析得到所述第一预设信息。
4.根据权利要求1~3任一项所述原生页面与HTML5页面通信方法,其特征在于,所述获取所述HTML5页面所属的第二预设信息包括:
通过所述HTML5页面内的预设js文件获取所述HTML5页面所属的所述第二预设信息。
5.根据权利要求1~3任一项所述原生页面与HTML5页面通信方法,其特征在于,该方法还包括:
通过所述HTML5页面提供的预设通信接口直接调用所述HTML5页面所属的所述第二预设信息;
由所述原生页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息。
6.根据权利要求5所述原生页面与HTML5页面通信方法,其特征在于,该方法还包括:
在通过所述HTML5页面提供的预设通信接口直接调用所述HTML5页面所属的所述第二预设信息之前,将所述第二预设信息转换成JSON数据格式的第二预设信息;
通过所述预设通信接口直接调用所述HTML5页面所属的所述JSON数据格式的第二预设信息。
7.一种原生页面与HTML5页面通信装置,其特征在于,该装置包括:
第一信息获取模块,用于采集一应用程序的原生页面所属的第一预设信息,并将所述第一预设信息写入预设控件中;其中,该预设控件用于在所述应用程序内呈现内嵌HTML5页面;
第二信息获取模块,用于从所述预设控件中读取所述应用程序的原生页面所属的所述第一预设信息,并获取所述HTML5页面所属的第二预设信息
信息关联上报模块,用于由所述HTML5页面将所述第二预设信息与所述第一预设信息关联后上报用户行为信息;所述第一预设信息和第二预设信息均至少包括用户唯一标识信息和用户页面访问信息;所述第二预设信息与第一预设信息的所述关联至少包括各自的所述用户唯一标识信息和用户页面访问信息的共享。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1~6任一项所述原生页面与HTML5页面通信方法的步骤。
9.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1~6任一项所述原生页面与HTML5页面通信方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710789582.XA CN107608801B (zh) | 2017-09-05 | 2017-09-05 | 原生页面与html5页面通信方法、装置、介质和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710789582.XA CN107608801B (zh) | 2017-09-05 | 2017-09-05 | 原生页面与html5页面通信方法、装置、介质和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107608801A CN107608801A (zh) | 2018-01-19 |
CN107608801B true CN107608801B (zh) | 2020-09-29 |
Family
ID=61057174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710789582.XA Active CN107608801B (zh) | 2017-09-05 | 2017-09-05 | 原生页面与html5页面通信方法、装置、介质和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107608801B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108182060B (zh) * | 2018-01-31 | 2020-11-27 | 北京腾云天下科技有限公司 | 一种混合应用的埋点方法、移动终端及系统 |
CN108469979A (zh) * | 2018-03-28 | 2018-08-31 | 深圳前海桔子信息技术有限公司 | 一种页面跳转方法、装置、服务器和存储介质 |
CN108845919A (zh) * | 2018-05-23 | 2018-11-20 | 北京五八信息技术有限公司 | 一种日志上报方法、装置、终端及计算机可读存储介质 |
CN109101228B (zh) * | 2018-08-10 | 2022-01-28 | 百度在线网络技术(北京)有限公司 | 应用程序的执行方法和装置 |
CN109657166A (zh) * | 2018-10-16 | 2019-04-19 | 深圳壹账通智能科技有限公司 | 互联网活动参与方法、装置、设备及可读存储介质 |
CN109743359B (zh) * | 2018-12-13 | 2022-10-25 | 平安普惠企业管理有限公司 | Hybrid通讯处理方法、装置、计算机设备及存储介质 |
CN111722935A (zh) * | 2019-03-20 | 2020-09-29 | 阿里巴巴集团控股有限公司 | 页面端与原生端的通信方法、装置、电子设备及可读介质 |
CN112199263A (zh) * | 2020-09-30 | 2021-01-08 | 北京字节跳动网络技术有限公司 | 录制页面的方法、装置、设备以及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103634382A (zh) * | 2013-11-20 | 2014-03-12 | 安徽科大讯飞信息科技股份有限公司 | 一种在网页上实现实时交互的系统及方法 |
US8843847B1 (en) * | 2012-07-29 | 2014-09-23 | Joingo, Llc | System and method for native application control of HTML5 content |
US8849985B1 (en) * | 2007-12-03 | 2014-09-30 | Appcelerator, Inc. | On-the-fly instrumentation of Web applications, Web-pages or Web-sites |
CN105893508A (zh) * | 2016-03-30 | 2016-08-24 | 北京京东尚科信息技术有限公司 | 确定原生页面和h5 页面访问次序的方法、装置和系统 |
CN106339163A (zh) * | 2016-08-30 | 2017-01-18 | 竞技世界(北京)网络技术有限公司 | 一种App内置浏览器与内嵌网页回退交互的方法 |
CN106897215A (zh) * | 2017-01-20 | 2017-06-27 | 华南理工大学 | 一种基于WebView网页加载性能及用户行为流数据采集的方法 |
CN106909288A (zh) * | 2017-03-29 | 2017-06-30 | 广州阿里巴巴文学信息技术有限公司 | 应用程序的刷新方法、装置及电子设备 |
-
2017
- 2017-09-05 CN CN201710789582.XA patent/CN107608801B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8849985B1 (en) * | 2007-12-03 | 2014-09-30 | Appcelerator, Inc. | On-the-fly instrumentation of Web applications, Web-pages or Web-sites |
US8843847B1 (en) * | 2012-07-29 | 2014-09-23 | Joingo, Llc | System and method for native application control of HTML5 content |
CN103634382A (zh) * | 2013-11-20 | 2014-03-12 | 安徽科大讯飞信息科技股份有限公司 | 一种在网页上实现实时交互的系统及方法 |
CN105893508A (zh) * | 2016-03-30 | 2016-08-24 | 北京京东尚科信息技术有限公司 | 确定原生页面和h5 页面访问次序的方法、装置和系统 |
CN106339163A (zh) * | 2016-08-30 | 2017-01-18 | 竞技世界(北京)网络技术有限公司 | 一种App内置浏览器与内嵌网页回退交互的方法 |
CN106897215A (zh) * | 2017-01-20 | 2017-06-27 | 华南理工大学 | 一种基于WebView网页加载性能及用户行为流数据采集的方法 |
CN106909288A (zh) * | 2017-03-29 | 2017-06-30 | 广州阿里巴巴文学信息技术有限公司 | 应用程序的刷新方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107608801A (zh) | 2018-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107608801B (zh) | 原生页面与html5页面通信方法、装置、介质和设备 | |
CN107506300B (zh) | 一种用户界面测试方法、装置、服务器和存储介质 | |
US20200357007A1 (en) | Page data acquisition method, apparatus, server, electronic device and computer readable medium | |
CN106844181B (zh) | 用于记录用户行为的方法、系统及移动终端 | |
CN109873735B (zh) | H5页面的性能测试方法、装置和计算机设备 | |
US11194863B2 (en) | Searching method and apparatus, device and non-volatile computer storage medium | |
CN106951248B (zh) | 添加代码的方法、装置、可读存储介质和计算设备 | |
CN107040574B (zh) | 一种截图、数据处理方法及设备 | |
CN111176629A (zh) | 一种应用开发的方法和装置 | |
CN110851495A (zh) | 异构源数据处理方法、装置、存储介质和电子设备 | |
CN109284450B (zh) | 订单成单路径的确定方法及装置、存储介质、电子设备 | |
CN110990746A (zh) | 页面加载方法、装置、系统、存储介质、电子设备 | |
CN111507074A (zh) | 数据处理方法及装置、处理器、电子设备及存储介质 | |
KR20140028789A (ko) | 모바일 디바이스에서의 웹 스크린 스크래핑 방법 및 웹 스크린 스크래핑을 제공하는 모바일 디바이스 | |
CN114461533A (zh) | Web页面自动化测试的方法、系统、电子装置和存储介质 | |
CN114048415A (zh) | 表单生成方法及装置、电子设备和计算机可读存储介质 | |
CN112395098A (zh) | 应用程序接口调用方法、装置、存储介质和电子设备 | |
CN106991191B (zh) | 商品筛选方法及装置、存储介质、电子设备 | |
CN110045952B (zh) | 代码调用方法与装置 | |
US11126410B2 (en) | Method and apparatus for building pages, apparatus and non-volatile computer storage medium | |
CN109358943B (zh) | 页面配置方法及装置、电子设备、存储介质 | |
CN110807056A (zh) | 基于Excel的报表处理方法、装置、介质及电子设备 | |
US20180081884A1 (en) | Method and apparatus for processing input sequence, apparatus and non-volatile computer storage medium | |
CN108984221B (zh) | 一种多平台用户行为日志的采集方法和装置 | |
CN111767111B (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 |