CN105279195B - 网页应用调用浏览器功能的方法及装置 - Google Patents
网页应用调用浏览器功能的方法及装置 Download PDFInfo
- Publication number
- CN105279195B CN105279195B CN201410352471.9A CN201410352471A CN105279195B CN 105279195 B CN105279195 B CN 105279195B CN 201410352471 A CN201410352471 A CN 201410352471A CN 105279195 B CN105279195 B CN 105279195B
- Authority
- CN
- China
- Prior art keywords
- browser
- browser function
- function
- file
- calls
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种网页应用调用浏览器功能的方法及装置,属于计算机领域。所述方法包括:对于浏览器包括的每个浏览器功能,根据接口定义语言IDL文件中所述浏览器功能对应的对象和方法文件中所述浏览器功能对应的方法,为所述浏览器功能封装对应的功能接口;将所述IDL文件中的每个对象和所述方法文件中的每个方法编译到浏览器内核库中;当所述功能接口中任一个功能接口接收到调用指令时,根据所述功能接口的目标浏览器功能对应的目标对象,从所述浏览器内核中调用所述目标对象对应的方法,以实现所述网络应用调用所述目标浏览器功能。本发明避免了浏览器代码量的膨胀,提高了浏览器功能的执行效率。
Description
技术领域
本发明涉及计算机领域,特别涉及一种网页应用调用浏览器功能的方法及装置。
背景技术
随着电子智能终端的发展与普及,终端可以通过安装的浏览器访问网页应用。由于浏览器中不仅集成了丰富的网页访问扩展功能,还集成了操作系统功能,比如网页访问扩展功能可以为无图模式、夜间模式等等,操作系统功能可以为获取终端的硬件信息、网络状态、屏幕常亮等等。因此,为了使网页应用更加丰富,可以在访问网页应用的过程中调用浏览器功能,浏览器功能包括网页访问扩展功能和操作系统功能。
浏览器和操作系统采用的都是Java语言,而网页应用采用的是Javascript语言,所以,可以事先在浏览器的Java层添加浏览器功能对应的Java对象,并对该Java对象添加方法,以及根据添加的Java对象和方法为该浏览器功能封装对应的Javascript接口。当网页应用通过该Javascript接口调用该浏览器功能时,浏览器根据该浏览器功能对应的Java对象,从查询接口表中查找该Java对象对应的方法,该查询接口表中包括Java对象与方法之间的对应关系。执行获取的方法,以实现该浏览器功能。
随着浏览器功能的不断增加,浏览器的Java层中添加的Java对象和方法会越来越多,导致浏览器的代码量膨胀。同时,由于Java语言进行编译时存在对象个数的限制,所以添加较多的Java对象可能会造成浏览器的代码编译失败。另外,添加较多的Java对象会使查询接口表中存储的Java对象和方法较多,导致查询接口表的效率较低,进而导致浏览器功能的执行效率较低。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种网页应用调用浏览器功能的方法及装置。所述技术方案如下:
一方面,提供了一种网页应用调用浏览器功能的方法,所述方法包括:
对于浏览器包括的每个浏览器功能,根据接口定义语言IDL文件中所述浏览器功能对应的对象和方法文件中所述浏览器功能对应的方法,为所述浏览器功能封装对应的功能接口;
将所述IDL文件中的每个对象和所述方法文件中的每个方法编译到浏览器内核库中;
当所述功能接口中任一个功能接口接收到调用指令时,根据所述功能接口的目标浏览器功能对应的目标对象,从所述浏览器内核中调用所述目标对象对应的方法,以实现所述网络应用调用所述目标浏览器功能。
另一方面,提供了一种网页应用调用浏览器功能的装置,所述装置包括:
封装模块,用于对于浏览器包括的每个浏览器功能,根据接口定义语言IDL文件中所述浏览器功能对应的对象和方法文件中所述浏览器功能对应的方法,为所述浏览器功能封装对应的功能接口;
编译模块,用于将所述IDL文件中的每个对象和所述方法文件中的每个方法编译到浏览器内核库中;
调用模块,用于当所述功能接口中任一个功能接口接收到调用指令时,根据所述功能接口的目标浏览器功能对应的目标对象,从所述浏览器内核中调用所述目标对象对应的方法,以实现所述网络应用调用所述目标浏览器功能。
在本发明实施例中,在IDL文件中存储浏览器功能对应的对象,以及在方法文件中存储每个对象对应的方法,无需在浏览器的Java层添加对象和方法,避免了浏览器的代码膨胀。同时,将IDL文件和方法文件单独编译到浏览器内核中,而不是与浏览器的代码一起编译到浏览器内核中,所以大大降低了对象个数的限制对浏览器代码编译的影响。另外,将浏览器功能对应的对象和方法单独存储,可以提高查询浏览器功能对应的对象和方法的效率,进而提高了浏览器功能的执行效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种网页应用调用浏览器功能的方法流程图;
图2是本发明实施例提供的一种网页应用调用浏览器功能的方法流程图;
图3是本发明实施例提供的一种网页应用调用浏览器功能的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1是本发明实施例提供的一种网页应用调用浏览器功能的方法流程图。参见图1,该方法包括:
步骤101:对于浏览器包括的每个浏览器功能,根据接口定义语言IDL文件中该浏览器功能对应的对象和方法文件中该浏览器功能对应的方法,为该浏览器功能封装对应的功能接口。
步骤102:将IDL文件中的每个对象和方法文件中的每个方法编译到浏览器内核库中。
步骤103:当该浏览器包括的浏览器功能对应的功能接口中任一个功能接口接收到调用指令时,根据该功能接口的目标浏览器功能对应的目标对象,从浏览器内核中调用目标对象对应的方法,以实现网络应用调用该目标浏览器功能。
在本发明实施例中,在IDL文件中存储浏览器功能对应的对象,以及在方法文件中存储每个对象对应的方法,无需在浏览器的Java层添加对象和方法,避免了浏览器的代码膨胀。同时,将IDL文件和方法文件单独编译到浏览器内核中,而不是与浏览器的代码一起编译到浏览器内核中,所以大大降低了对象个数的限制对浏览器代码编译的影响。另外,将浏览器功能对应的对象和方法单独存储,可以提高查询浏览器功能对应的对象和方法的效率,进而提高了浏览器功能的执行效率。
可选地,对于浏览器包括的每个浏览器功能,根据接口定义语言IDL文件中该浏览器功能对应的对象和方法文件中该浏览器功能对应的方法,为该浏览器功能封装对应的功能接口之前,还包括:
按照IDL规范创建IDL文件;
为浏览器包括的每个浏览器功能创建对应的对象;
将创建的对象添加到该IDL文件中。
可选地,为每个浏览器功能创建对应的对象之后,还包括:
对浏览器包括的每个浏览器功能对应的对象添加方法;
将添加的方法存储在方法文件中。
可选地,将IDL文件中的每个对象和方法文件中的每个方法编译到浏览器内核库中之后,还包括:
对于浏览器包括的每个浏览器功能,获取该浏览器功能对应的浏览器对象,该浏览器对象是从浏览器包括的多个浏览器对象中为该浏览器功能选择的浏览器对象;
将IDL文件中该浏览器功能对应的对象与获取的浏览器对象进行绑定。
可选地,根据该功能接口的目标浏览器功能对应的目标对象,从浏览器内核中调用该目标对象对应的方法,以实现网络应用调用该目标浏览器功能,包括:
获取该功能接口对应的浏览器对象;
获取与该浏览器对象绑定的至少一个对象;
从获取的至少一个对象中选择该目标浏览器功能对应的目标对象;
根据该目标对象,从浏览器内核中调用该目标对象对应的方法,以实现网络应用调用该目标浏览器功能。
可选地,从获取的至少一个对象中选择该目标浏览器功能对应的目标对象,包括:
获取该目标浏览器功能对应的目标对象标识;
根据该目标对象标识,从获取的至少一个对象中选择该目标浏览器功能对应的目标对象。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
图2是本发明实施例提供的一种网页应用调用浏览器功能的方法流程图。参见图2,该方法包括:
步骤201:按照IDL((interface definition language,接口定义语言)规范创建IDL文件。
其中,IDL是一种规范语言,为了统一每个开发人员编写代码的语言,以及使终端识别该语言,因此,需要按照IDL规范创建IDL文件。
需要补充说明的是,IDL文件就相当于是一个配置文件,换句话说,IDL文件就是一个模板,可以在IDL文件中定义各个浏览器功能对应的对象。
步骤202:为浏览器包括的每个浏览器功能创建对应的对象,将创建的对象添加到IDL文件中。
浏览器可以包括多个浏览器功能,且浏览器功能包括网页访问扩展功能和操作系统功能。因此,该多个浏览器功能可以为多个网页访问扩展功能,还可以为多个操作系统功能,当然,该多个浏览器功能还可以为多个网页访问扩展功能和多个操作系统功能。优选地,该多个浏览器功能为多个网页访问扩展功能和多个操作系统功能。比如,浏览器可以包括2个网页访问扩展功能和3个操作系统功能,2个网页访问扩展功能可以为无图模式和夜间模式功能,3个操作系统功能可以为获取终端的硬件信息、网络状态和调节屏幕亮度等功能。
进一步地,对该浏览器包括的每个浏览器功能创建对应的对象之后,每个浏览器功能对应的对象均有一个对象标识。可以将该对象标识和该浏览器功能标识进行存储,使该浏览器功能与其对应的对象一一对应。
其中,浏览器功能标识可以为该浏览器功能的名称,对象标识也可以为该对象的名称,本发明实施例对此不做具体限定。
步骤203:对每个浏览器功能对应的对象添加方法,将添加的方法存储在方法文件中。
其中,一个对象可以对应多个方法,一个方法对应一种实现方式,所以,在本发明实施例中,当浏览器功能对应的对象存在多种实现方式时,可以对该对象添加多个方法,并将添加的多个方法存储在方法文件中。比如,该浏览器功能为调节屏幕亮度,假设调节屏幕亮度可以包括三种实现方式,比如可以为调节亮度最低、调节亮度最高和自行调节亮度三种方式,该三种方式分别对应一个方法,所以可以将该三种方式对应的方法存储在方法文件中。
进一步地,对每个浏览器功能对应的对象添加方法之后,每个方法均对应一个方法标识,可以将方法标识和该对象标识进行存储,使对象与其对应的方法对应。
其中,方法标识可以为该方法的名称,本发明实施例对此不做具体限定。
结合201-203的步骤,将浏览器包括的每个浏览器功能对应的对象存储在IDL文件中,以及将每个对象对应的方法存储在方法文件中,而不是在浏览器Java层中添加对象,以及为该对象添加方法,避免了浏览器Java层的代码量的膨胀。
步骤204:对于浏览器包括的每个浏览器功能,根据IDL文件中该浏览器功能对应的对象和方法文件中该浏览器功能对应的方法,为该浏览器功能封装对应的功能接口。
具体地,对于浏览器包括的每个浏览器功能,从IDL文件中获取该浏览器功能对应的对象,以及根据该浏览器功能对应的对象,从方法文件中获取该浏览器功能对应的方法,根据获取的对象和获取的方法,为该浏览器功能封装对应的功能接口。
其中,从IDL文件中获取该浏览器功能对应的对象的具体操作可以为:根据该浏览器功能标识,从存储的浏览器功能标识与对象标识之间的对应关系中获取对应的对象标识,根据获取的对象标识,从IDL文件中获取该浏览器功能对应的对象。
可选地,从IDL文件中获取该浏览器功能对应的对象的具体操作可以为:从IDL文件包括的第一个对象开始扫描,如果扫描的对象标识与该浏览器功能对应的对象标识相同,则确定扫描的对象为该浏览器功能对应的对象,否则,继续扫描下一个对象,直至从IDL文件中获取到该浏览器功能对应的对象为止。
其中,根据该浏览器功能对应的对象,从方法文件中获取该浏览器功能对应的方法的具体操作可以为:根据该浏览器功能对应的对象标识,从存储的对象标识与方法标识之间对应关系中获取对应的方法标识,根据获取的方法标识,从方法文件中获取该浏览器功能对应的方法。其中,获取的方法为至少一个。
可选地,根据该浏览器功能对应的对象,从方法文件中获取该浏览器功能对应的方法的具体操作可以为:根据该浏览器功能对应的对象标识,确定该对象对应的方法标识。从方法文件包括的第一个方法开始扫描,如果扫描的方法标识与该对象对应的方法标识相同,则确定扫描的方法为该浏览器功能对应的方法,否则,继续扫描下一个方法,直至从方法文件中获取到该浏览器功能对应的方法为止。
由于一个对象可以对应多个方法,所以,为该浏览器功能封装对应的功能接口时,可以根据该对象和该对象对应的多个方法,分别为该浏览器功能封装对应的多个功能接口,功能接口的个数与方法的个数相等。当然,如果多个方法可以通过同一个功能接口实现时,也可以根据该对象和该对象对应的多个方法,为该浏览器功能封装对应的一个功能接口。
其中,功能接口可以是以界面的方式实现,还可以是以按钮的方式实现。在实际应用中,可以针对不同的浏览器功能选择不同的实现方式体现该功能接口。本发明实施例对此不做具体限定。
需要补充说明的是,该功能接口是Javascript接口,如此,网页应用就可以通过该功能接口调用浏览器功能。
步骤205:将IDL文件中的每个对象和方法文件中的每个方法编译到浏览器内核库中。
具体地,采用Java编译方法,将IDL文件中的每个对象和方法文件中的每个方法编译到浏览器内核中。
编译后的对象和方法是浏览器可以识别的,所以,将IDL文件中的每个对象和方法文件中的每个方法编译到浏览器内核库中之后,当网页应用通过功能接口调用浏览器功能时,终端可以从浏览器内核中获取编译后的方法,实现网页应用调用浏览器功能。
步骤206:对于浏览器包括的每个浏览器功能,获取该浏览器功能对应的浏览器对象,该浏览器对象是从浏览器包括的多个浏览器对象中为该浏览器功能选择的浏览器对象。
其中,每个浏览器功能均对应一个浏览器对象,且每个浏览器功能对应的浏览器对象可以是开发人员事先从该浏览器包括的多个浏览器对象中选择,也可以是终端从该浏览器包括的多个浏览器对象中随机选择的,本发明实施例对此不做具体限定。
步骤207:将IDL文件中该浏览器功能对应的对象与获取的浏览器对象进行绑定。
在本发明实施例中,浏览器包括的浏览器对象是采用制定的标准进行定义的,所以,将IDL文件中该浏览器功能对应对象与获取的浏览器对象进行绑定之后,当通过功能接口调用浏览器功能时,可以采用标准方式使用该功能接口。
步骤208:当该浏览器包括的浏览器功能对应的功能接口中任一个功能接口接收到调用指令时,获取该功能接口对应的浏览器对象。
其中,将该浏览器功能对应的对象与获取的浏览器对象进行绑定之后,就相当于该浏览器功能对应的对象为该浏览器对象的子对象,所以,当该浏览器包括的浏览器功能对应的功能接口中的任一功能接口接收到调用指令时,可以确定该功能接口对应的浏览器对象。然后基于确定的浏览器对象,调用该浏览器功能。
其中,通过功能接口调用浏览器功能的格式可以为[浏览器对象].[浏览器功能对应的对象].[方法](参数,…,回调函数)。
步骤209:获取与该浏览器对象绑定的至少一个对象。
由于浏览器包括多个浏览器功能,所以将浏览器功能对应的对象与浏览器对象进行绑定时,可能会出现多个浏览器功能对应的对象与同一个浏览器对象绑定。因此,步骤209中获取到与该浏览器对象绑定的对象为至少一个。
步骤210:从获取的至少一个对象中选择目标浏览器功能对应的目标对象。
具体地,获取目标浏览器功能对应的目标对象标识;根据目标对象标识,从获取的至少一个对象中选择目标浏览器功能对应的目标对象。
其中,获取目标浏览器功能对应的目标对象标识的具体操作可以为:根据该目标浏览器功能标识,从存储的浏览器功能标识与对象标识之间的对应关系中获取对应的对象标识,将获取的对象标识确定为目标对象标识。
其中,根据目标对象标识,从获取的至少一个对象中选择目标浏览器功能对应的目标对象的具体操作可以为:将获取的至少一个对象的对象标识与目标对象标识进行比较,从获取的至少一个对象中,选择对象标识与目标对象标识相同的对象,将选择的对象确定为目标对象。
步骤211:根据选择的目标对象,从浏览器内核中调用该目标对象对应的方法,以实现网络应用调用目标浏览器功能。
具体地,根据选择的目标对象,从浏览器内核中调用该目标对象对应的方法,执行该方法,以实现网络应用调用目标浏览器功能。
在本发明实施例中,在IDL文件中创建浏览器功能对应的对象,以及在方法文件中为该对象添加对应的方法,无需在浏览器的Java层添加对象和方法,避免了浏览器的代码膨胀。同时,将IDL文件和方法文件单独编译到浏览器内核中,而不是与浏览器的代码一起编译到浏览器内核中,所以大大降低了对象个数的限制对浏览器代码编译的影响。另外,将浏览器功能对应的对象和方法单独存储,可以提高查询浏览器功能对应的对象和方法的效率,进而提高了浏览器功能的执行效率。
图3是本发明实施例提供的一种网页应用调用浏览器功能的装置结构示意图。参见图3,该装置包括:
封装模块301,用于对于浏览器包括的每个浏览器功能,根据接口定义语言IDL文件中该浏览器功能对应的对象和方法文件中该浏览器功能对应的方法,为该浏览器功能封装对应的功能接口;
编译模块302,用于将IDL文件中的每个对象和方法文件中的每个方法编译到浏览器内核库中;
调用模块303,用于当该浏览器包括的浏览器功能对应的功能接口中任一个功能接口接收到调用指令时,根据该功能接口的目标浏览器功能对应的目标对象,从浏览器内核中调用该目标对象对应的方法,以实现网络应用调用该目标浏览器功能。
可选地,该装置还包括:
第一创建模块,用于按照IDL规范创建IDL文件;
第二创建模块,用于为浏览器包括的每个浏览器功能创建对应的对象;
第一添加模块,用于将创建的对象添加到该IDL文件中。
可选地,该装置还包括:
第二添加模块,用于对浏览器包括的每个浏览器功能对应的对象添加方法;
存储模块,用于将添加的方法存储在方法文件中。
可选地,该装置还包括:
获取模块,用于对于浏览器包括的每个浏览器功能,获取该浏览器功能对应的浏览器对象,该浏览器对象是从浏览器包括的多个浏览器对象中为该浏览器功能选择的浏览器对象;
绑定模块,用于将IDL文件中该浏览器功能对应的对象与获取的浏览器对象进行绑定。
可选地,调用模块303包括:
第一获取单元,用于当该浏览器包括的浏览器功能对应的功能接口中任一个功能接口接收到调用指令时,获取该功能接口对应的浏览器对象;
第二获取单元,用于获取与该浏览器对象绑定的至少一个对象;
选择单元,用于从获取的至少一个对象中选择该目标浏览器功能对应的目标对象;
调用单元,用于根据该目标对象,从该浏览器内核中调用该目标对象对应的方法,以实现网络应用调用该目标浏览器功能。
可选地,选择单元包括:
获取子单元,用于获取该目标浏览器功能对应的目标对象标识;
选择子单元,用于根据该目标对象标识,从获取的至少一个对象中选择该目标浏览器功能对应的目标对象。
在本发明实施例中,在IDL文件中创建浏览器功能对应的对象,以及在方法文件中为该对象添加对应的方法,无需在浏览器的Java层添加对象和方法,避免了浏览器的代码膨胀。同时,将IDL文件和方法文件单独编译到浏览器内核中,而不是与浏览器的代码一起编译到浏览器内核中,所以大大降低了对象个数的限制对浏览器代码编译的影响。另外,将浏览器功能对应的对象和方法单独存储,可以提高查询浏览器功能对应的对象和方法的效率,进而提高了浏览器功能的执行效率。
需要说明的是:上述实施例提供的网页应用调用浏览器功能的装置在网页应用调用浏览器功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的网页应用调用浏览器功能的装置与网页应用调用浏览器功能的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种网页应用调用浏览器功能的方法,其特征在于,所述方法包括:
将浏览器包括的每个浏览器功能对应的对象存储在接口定义语言IDL文件中,以及将每个对象对应的方法存储在方法文件中;
对于浏览器包括的每个浏览器功能,根据所述IDL文件中所述浏览器功能对应的对象和所述方法文件中所述浏览器功能对应的方法,为所述浏览器功能封装对应的功能接口;
将所述IDL文件中的每个对象和所述方法文件中的每个方法编译到浏览器内核库中;
当所述功能接口中任一个功能接口接收到调用指令时,根据所述功能接口的目标浏览器功能对应的目标对象,从所述浏览器内核中调用所述目标对象对应的方法,以实现网络应用调用所述目标浏览器功能。
2.如权利要求1所述的网页应用调用浏览器功能的方法,其特征在于,所述将浏览器包括的每个浏览器功能对应的对象存储在接口定义语言IDL文件中,包括:
按照IDL规范创建所述IDL文件;
为所述每个浏览器功能创建对应的对象;
将创建的对象添加到所述IDL文件中。
3.如权利要求2所述的网页应用调用浏览器功能的方法,其特征在于,所述将每个对象对应的方法存储在方法文件中,包括:
对所述每个浏览器功能对应的对象添加方法;
将添加的方法存储在所述方法文件中。
4.如权利要求1-3任一权利要求所述的网页应用调用浏览器功能的方法,其特征在于,所述将所述IDL文件中的每个对象和所述方法文件中的每个方法编译到浏览器内核库中之后,还包括:
对于所述浏览器包括的每个浏览器功能,获取所述浏览器功能对应的浏览器对象,所述浏览器对象是从所述浏览器包括的多个浏览器对象中为所述浏览器功能选择的浏览器对象;
将所述IDL文件中所述浏览器功能对应的对象与获取的浏览器对象进行绑定。
5.如权利要求4所述的网页应用调用浏览器功能的方法,其特征在于,所述根据所述功能接口的目标浏览器功能对应的目标对象,从所述浏览器内核中调用所述目标对象对应的方法,以实现网络应用调用所述目标浏览器功能,包括:
获取所述功能接口对应的浏览器对象;
获取与所述浏览器对象绑定的至少一个对象;
从所述至少一个对象中选择所述目标浏览器功能对应的目标对象;
根据所述目标对象,从所述浏览器内核中调用所述目标对象对应的方法,以实现网络应用调用所述目标浏览器功能。
6.如权利要求5所述的网页应用调用浏览器功能的方法,其特征在于,所述从所述至少一个对象中选择所述目标浏览器功能对应的目标对象,包括:
获取所述目标浏览器功能对应的目标对象标识;
根据所述目标对象标识,从所述至少一个对象中选择所述目标浏览器功能对应的目标对象。
7.一种网页应用调用浏览器功能的装置,其特征在于,所述网页应用调用浏览器功能的装置包括:
所述网页应用调用浏览器功能的装置用于将浏览器包括的每个浏览器功能对应的对象存储在接口定义语言IDL文件中,以及将每个对象对应的方法存储在方法文件中;
封装模块,用于对于浏览器包括的每个浏览器功能,根据所述IDL文件中所述浏览器功能对应的对象和所述方法文件中所述浏览器功能对应的方法,为所述浏览器功能封装对应的功能接口;
编译模块,用于将所述IDL文件中的每个对象和所述方法文件中的每个方法编译到浏览器内核库中;
调用模块,用于当所述功能接口中任一个功能接口接收到调用指令时,根据所述功能接口的目标浏览器功能对应的目标对象,从所述浏览器内核中调用所述目标对象对应的方法,以实现网络应用调用所述目标浏览器功能。
8.如权利要求7所述的网页应用调用浏览器功能的装置,其特征在于,所述网页应用调用浏览器功能的装置还包括:
第一创建模块,用于按照IDL规范创建所述IDL文件;
第二创建模块,用于为所述每个浏览器功能创建对应的对象;
第一添加模块,用于将创建的对象添加到所述IDL文件中。
9.如权利要求8所述的网页应用调用浏览器功能的装置,其特征在于,所述网页应用调用浏览器功能的装置还包括:
第二添加模块,用于对所述每个浏览器功能对应的对象添加方法;
存储模块,用于将添加的方法存储在所述方法文件中。
10.如权利要求7-9任一权利要求所述的网页应用调用浏览器功能的装置,其特征在于,所述网页应用调用浏览器功能的装置还包括:
获取模块,用于对于所述浏览器包括的每个浏览器功能,获取所述浏览器功能对应的浏览器对象,所述浏览器对象是从所述浏览器包括的多个浏览器对象中为所述浏览器功能选择的浏览器对象;
绑定模块,用于将所述IDL文件中所述浏览器功能对应的对象与获取的浏览器对象进行绑定。
11.如权利要求9所述的网页应用调用浏览器功能的装置,其特征在于,所述调用模块包括:
第一获取单元,用于当所述功能接口中任一个功能接口接收到调用指令时,获取所述功能接口对应的浏览器对象;
第二获取单元,用于获取与所述浏览器对象绑定的至少一个对象;
选择单元,用于从所述至少一个对象中选择所述目标浏览器功能对应的目标对象;
调用单元,用于根据所述目标对象,从所述浏览器内核中调用所述目标对象对应的方法,以实现网络应用调用所述目标浏览器功能。
12.如权利要求11所述的网页应用调用浏览器功能的装置,其特征在于,所述选择单元包括:
获取子单元,用于获取所述目标浏览器功能对应的目标对象标识;
选择子单元,用于根据所述目标对象标识,从所述至少一个对象中选择所述目标浏览器功能对应的目标对象。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410352471.9A CN105279195B (zh) | 2014-07-23 | 2014-07-23 | 网页应用调用浏览器功能的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410352471.9A CN105279195B (zh) | 2014-07-23 | 2014-07-23 | 网页应用调用浏览器功能的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105279195A CN105279195A (zh) | 2016-01-27 |
CN105279195B true CN105279195B (zh) | 2019-11-26 |
Family
ID=55148217
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410352471.9A Active CN105279195B (zh) | 2014-07-23 | 2014-07-23 | 网页应用调用浏览器功能的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105279195B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107318051A (zh) * | 2017-06-06 | 2017-11-03 | 深圳Tcl新技术有限公司 | 电视终端及浏览器工具栏的实现方法和存储介质 |
CN107832045B (zh) * | 2017-10-16 | 2021-03-30 | 北京京东尚科信息技术有限公司 | 跨编程语言接口转换的方法和装置 |
CN109902257B (zh) * | 2019-02-28 | 2021-06-29 | 广州达安临床检验中心有限公司 | 资源访问方法、装置、计算机设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102929599A (zh) * | 2012-09-26 | 2013-02-13 | 广州市动景计算机科技有限公司 | 移动终端浏览器界面的修改方法及装置、移动终端 |
CN102968448A (zh) * | 2012-10-25 | 2013-03-13 | 北京奇虎科技有限公司 | 一种浏览器 |
CN103092833A (zh) * | 2011-10-27 | 2013-05-08 | 腾讯科技(深圳)有限公司 | 一种在手机浏览器中查看图片的方法、装置及移动设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000322288A (ja) * | 1999-05-06 | 2000-11-24 | Fujitsu Ltd | 分散オブジェクト開発システム、および、分散オブジェクト開発をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体 |
US6532471B1 (en) * | 2000-12-11 | 2003-03-11 | International Business Machines Corporation | Interface repository browser and editor |
-
2014
- 2014-07-23 CN CN201410352471.9A patent/CN105279195B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103092833A (zh) * | 2011-10-27 | 2013-05-08 | 腾讯科技(深圳)有限公司 | 一种在手机浏览器中查看图片的方法、装置及移动设备 |
CN102929599A (zh) * | 2012-09-26 | 2013-02-13 | 广州市动景计算机科技有限公司 | 移动终端浏览器界面的修改方法及装置、移动终端 |
CN102968448A (zh) * | 2012-10-25 | 2013-03-13 | 北京奇虎科技有限公司 | 一种浏览器 |
Non-Patent Citations (1)
Title |
---|
基于WebKit的嵌入式浏览器移植和扩展技术;吴欢;《万方》;20140609;第1-71页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105279195A (zh) | 2016-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106302008A (zh) | 数据更新方法和装置 | |
CN104683386A (zh) | 可定制响应的桩服务实现方法及装置 | |
CN103955364A (zh) | 一种适用于手机的前端组件方法 | |
CN102207873B (zh) | 基于安卓平台的JavaScript扩展对象实现方法及绑定接口结构 | |
CN105279195B (zh) | 网页应用调用浏览器功能的方法及装置 | |
CN103176834B (zh) | 一种调用扩展接口的方法及装置 | |
CN101937356B (zh) | 一种编译WebKit浏览器的方法及装置 | |
CN108259620A (zh) | 一种广告编辑和预览方法、智能终端、系统及存储装置 | |
CN101788906A (zh) | 资源管理方法和系统 | |
CN106354843A (zh) | 网络爬虫系统以及方法 | |
CN109960491A (zh) | 应用程序生成方法、生成装置、电子设备及存储介质 | |
CN104793954A (zh) | 一种免编译的图形化组合元件封装重用方法 | |
CN103513976A (zh) | 业务流程建模方法及装置 | |
CN104954894A (zh) | 一种视频流量引导方法、装置及一种电子设备 | |
CN115033235A (zh) | 基于低代码开发平台进行web页面灵活复用的系统及方法 | |
CN107301347A (zh) | 一种基于静态分析获取Hbuilder App调用图的方法 | |
CN109086147A (zh) | 应用程序的服务接口调用方法、装置及存储介质 | |
CN110059278A (zh) | Web页面配置方法、服务器及计算机可读存储介质 | |
CN109240756A (zh) | 一种动态加载JavaScript模块的方法及装置 | |
CN103607454A (zh) | Android系统浏览器设置私有代理服务器的方法 | |
CN106126595A (zh) | 一种文件下载方法及装置 | |
CN104834594B (zh) | web系统测试方法及装置 | |
CN109684192A (zh) | 基于数据处理的本地测试方法、设备、存储介质及装置 | |
CN103870280B (zh) | 基于flex与jsp的网页无缝结合处理方法 | |
CN103164306B (zh) | 一种测试逻辑的生成方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221129 Address after: 1402, Floor 14, Block A, Haina Baichuan Headquarters Building, No. 6, Baoxing Road, Haibin Community, Xin'an Street, Bao'an District, Shenzhen, Guangdong 518133 Patentee after: Shenzhen Yayue Technology Co.,Ltd. Address before: 2, 518000, East 403 room, SEG science and Technology Park, Zhenxing Road, Shenzhen, Guangdong, Futian District Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. |
|
TR01 | Transfer of patent right |