[发明专利]一种网页端调用本地应用功能的方法及装置在审
申请号: | 201610113515.1 | 申请日: | 2016-02-29 |
公开(公告)号: | CN107133077A | 公开(公告)日: | 2017-09-05 |
发明(设计)人: | 刘潮;何腾俊;王凯 | 申请(专利权)人: | 深圳秀豹科技有限公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45;G06F9/48 |
代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 王宝筠 |
地址: | 518052 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 网页 调用 本地 应用 功能 方法 装置 | ||
技术领域
本发明涉及数据处理领域,具体涉及一种网页端调用本地应用功能的方法及装置。
背景技术
对于结合了原生应用和web应用特点的混合应用,网页端调用本地应用的各个功能的实现方式很多。目前,主流的网页端调用本地应用功能的方法需要预先在本地应用中编写调用各个功能的逻辑代码,一般由if{}else{}语句实现。一旦网页端需要增加调用本地应用的某项功能,本地应用需要同时更新逻辑代码中的if{}else{}语句,否则即使本地应用中实现了该项功能,网页端也不能正常的对其进行调用。可见,上述方式中不能省略的是开发人员对本地应用中逻辑代码的更新维护。
发明内容
针对上述问题,本发明提供了一种网页端调用本地应用功能的方法及装置,不仅能够节省开发人员对本地应用中逻辑代码的维护,还保证网页端能够对本地应用的所有功能进行调用。
本发明提供了一种网页端调用本地应用功能的方法,所述方法包括:
接收网页端以字符串格式发送的任一功能的代码段,所述网页端预先设置有以预设编程语言编写的实现各个功能的代码段;
按照所述编程语言的语法规则,将所述代码段解析成语法树,所述语法树包括所述代码段中具有执行顺序的类名称和方法名称;
按照所述执行顺序,执行所述语法树中的类名称和方法名称分别对应的类和方法,完成所述功能的调用。
优选地,在执行所述语法树中任一类名称或方法名称对应的类或方法之前,首先判断本地是否存在所述类或所述方法;
如果本地存在所述类或所述方法,则执行所述类或所述方法;否则,提示 错误。
优选地,在执行所述语法树中最后一个方法后,判断所述方法是否存在返回值;
如果所述方法存在返回值,则将所述返回值发送至所述网页端。
优选地,所述编程语言为Objective-C语言。
优选地,所述如果本地存在所述类或所述方法,则执行所述类或所述方法,具体包括:
利用Objective-C语言的Runtime机制,在本地应用运行的过程中,执行本地存在的所述类和所述方法。
本发明还提供了一种网页端调用本地应用功能的装置,所述装置包括:
接收模块,用于接收网页端以字符串格式发送的任一功能的代码段,所述网页端预先设置有以预设编程语言编写的实现各个功能的代码段;
解析模块,用于按照所述编程语言的语法规则,将所述代码段解析成语法树,所述语法树包括所述代码段中具有执行顺序的类名称和方法名称;
第一执行模块,用于按照所述执行顺序,执行所述语法树中的类名称和方法名称分别对应的类和方法,完成所述功能的调用。
优选地,所述装置还包括:
第一判断模块,用于在执行所述语法树中任一类名称或方法名称对应的类或方法之前,首先判断本地是否存在所述类或所述方法;
第二执行模块,用于在本地存在所述类或所述方法时,执行所述类或所述方法;
提示模块,用于在本地不存在所述类或所述方法时,提示错误。
优选地,所述装置还包括:
第二判断模块,用于在执行所述语法树中最后一个方法后,判断所述方法是否存在返回值;
发送模块,用于在所述方法存在返回值时,将所述返回值发送至所述网页端。
优选地,所述编程语言为Objective-C语言。
优选地,所述第二执行模块,具体用于:利用Objective-C语言的Runtime机制,在本地应用运行的过程中,执行本地存在的所述类和所述方法。
本发明提供的网页端调用本地应用功能的方法中,首先,本地终端接收网页端以字符串格式发送的任一功能的代码段,所述网页端预先设置有以预设编程语言编写的实现各个功能的代码段。其次,所述本地终端按照所述编程语言的语法规则,将所述代码段解析成语法树,所述语法树包括所述代码段中具有执行顺序的类名称和方法名称。最后,所述本地终端按照所述执行顺序,执行所述语法树中的类名称和方法名称分别对应的类和方法,完成所述功能的调用。本发明的本地终端在接收到网页端的任何功能的代码段时,均是按照预设编程语言的语法规则将其解析为语法树,并根据语法树中的执行顺序依次执行所述代码段中的各个类和方法,最终实现网页端对本地应用功能的方法。即使网页端需要增加调用本地应用的某项功能,本地终端也不需要更新,节省了开发人员的更新维护成本。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳秀豹科技有限公司,未经深圳秀豹科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610113515.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种开启软件功能的方法及装置
- 下一篇:扩展显示标识数据校验方法及系统