[发明专利]页面应用转化为原生应用的处理方法和装置有效
申请号: | 201910096813.8 | 申请日: | 2019-01-31 |
公开(公告)号: | CN109814866B | 公开(公告)日: | 2022-02-08 |
发明(设计)人: | 俞亮 | 申请(专利权)人: | 天津字节跳动科技有限公司 |
主分类号: | G06F8/38 | 分类号: | G06F8/38;G06F8/30 |
代理公司: | 北京清亦华知识产权代理事务所(普通合伙) 11201 | 代理人: | 张润 |
地址: | 300000 天津市滨海高新*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 页面 应用 转化 原生 处理 方法 装置 | ||
1.一种页面应用转化为原生应用的处理方法,其特征在于,包括:
对页面应用对应的文档对象模型进行遍历,以获取所述文档对象模型中各节点的属性信息;
根据所述文档对象模型中各节点的属性信息,生成所述文档对象模型对应的参考描述语言,其中,所述参考描述语言为任意可直接转化为原生应用代码的语言;
对所述参考描述语言进行解析,以生成与所述页面应用对应的原生应用布局代码;
将所述布局代码插入预设的模板代码中,以生成与所述页面应用对应的原生应用代码。
2.如权利要求1所述的方法,其特征在于,所述节点的属性信息,包括节点的类型、样式及子节点标识;
所述生成所述文档对象模型对应的参考描述语言,包括:
根据每个节点的属性信息中包含的子节点标识,确定各节点间的层级关系;
根据各节点间的层级关系,由根节点至子节点,依次生成每个节点在所述参考描述语言下的对象,其中,与每个节点对应的对象中包括该节点的类型、样式及取值,每个节点的取值,用于表征该节点中包含的各子节点在所述参考描述语言下的对象。
3.如权利要求2所述的方法,其特征在于,所述对所述参考描述语言进行解析,以生成与所述页面应用对应的原生应用布局代码,包括:
对每个参考描述语言下的对象进行解析,以获取每个对象的类型、样式及取值;
判断每个对象的取值是否为0;
若第一对象的取值为0,则根据所述第一对象的类型、样式及取值,确定所述第一对象在原生应用中对应的第一组件代码中各变量的取值,其中,第一组件代码中用于表征所述第一对象取值的变量为空。
4.如权利要求3所述的方法,其特征在于,所述判断每个对象的取值是否为0之后,还包括:
若第二对象的取值为非0,则获取所述第二对象的取值数组中的每个第三对象的类型、样式及取值;
若每个第三对象的取值均为0,则根据所述每个第三对象的类型、样式及取值,确定每个第三对象在原生应用中对应的各第三组件代码中各变量的取值;
根据所述各第三组件代码,确定所述第二对象在原生应用中对应的第二组件代码中各变量的取值,其中,第二组件代码中用于表征所述第二对象取值的变量的值为由各第三组件代码组成的字符串。
5.如权利要求4所述的方法,其特征在于,所述获取所述第二对象的取值数组中的每个第三对象的类型、样式及取值之后,还包括:
若任一第三对象的取值为非0,则获取该第三对象的取值数组中的每个第四对象的类型、样式及取值;
根据每个第四对象的类型、样式及取值,确定每个第四对象在原生应用中对应的第四组件代码中各变量的取值。
6.如权利要求1-5任一项所述的方法,其特征在于,所述页面应用对应的原生应用布局代码中包括各组件代码所属页面模块的标识,所述预设的模板代码中包括各页面模块的标识;
所述将所述布局代码插入预设的模板代码中,包括:
将每个组件代码依次插入所述预设的模板代码中与该组件代码所属页面模块的标识匹配的页面模块中。
7.一种页面应用转化为原生应用的处理装置,其特征在于,包括:
信息获取模块,用于对页面应用对应的文档对象模型进行遍历,以获取所述文档对象模型中各节点的属性信息;
生成模块,用于根据所述文档对象模型中各节点的属性信息,生成所述文档对象模型对应的参考描述语言,其中,所述参考描述语言为任意可直接转化为原生应用代码的语言;
解析模块,用于对所述参考描述语言进行解析,以生成与所述页面应用对应的原生应用布局代码;
插入模块,用于将所述布局代码插入预设的模板代码中,以生成与所述页面应用对应的原生应用代码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津字节跳动科技有限公司,未经天津字节跳动科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910096813.8/1.html,转载请声明来源钻瓜专利网。