CN110908712A - 移动端跨平台的数据处理方法和设备 - Google Patents
移动端跨平台的数据处理方法和设备 Download PDFInfo
- Publication number
- CN110908712A CN110908712A CN201911229537.4A CN201911229537A CN110908712A CN 110908712 A CN110908712 A CN 110908712A CN 201911229537 A CN201911229537 A CN 201911229537A CN 110908712 A CN110908712 A CN 110908712A
- Authority
- CN
- China
- Prior art keywords
- api
- mobile terminal
- native
- ios
- image file
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45529—Embedded in an application, e.g. JavaScript in a Web browser
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种移动端跨平台的数据处理方法和设备。该方法包括如下步骤:使用原生安卓Android或iOS操作系统的API来创建嵌入式的HTML渲染引擎作为移动终端web壳,其中,壳是定义应用程序和Web网页之间的接口,以便Web网页中的Javascript调用应用程序,提供基于Web的应用程序的API;通过应用程序和Web网页之间的接口,使用页面中的Javascript调用安卓或iOS原生程序为Web页面的展现层提供原生功能的API,并嵌入到应用程序。利用本发明的技术方案,能够减少两种平台之间差异适配的工作量,提高移动端开发效率。
Description
技术领域
本发明涉及一种移动端跨平台的数据处理方法,同时还涉及一种用于实施该移动端跨平台的数据处理方法的计算机设备,属于计算机软件技术领域。
背景技术
在图书出版发行行业从事移动端开发都会面临一个巨大的问题,就是终端所搭载的操作系统不同,而不同的操作系统所需的移动端应用程序也不同。对于目前上市面上的主流移动设备来说,安卓(Android)系统、IOS操作系统,让对应操作系统的客户端开发实现,适配上都很困难,且投入巨大,相应客户端的开发效率较低。
因此,目前亟需能够通过一套系统实现两种操作系统客户端应用程序开发的技术方案。
发明内容
本发明所要解决的首要技术问题在于提供一种移动端跨平台的数据处理方法。
本发明所要解决的另一技术问题在于提供一种用于实施上述移动端跨平台的数据处理方法的计算机设备。
为实现上述目的,本发明采用下述的技术方案:
根据本发明实施例的第一方面,提供一种移动端跨平台的数据处理方法,包括如下步骤:
使用原生安卓Android或iOS操作系统的应用程序编程接口API来创建嵌入式的超文本标记语言HTML渲染引擎作为移动终端web壳,其中,所述移动终端Web壳是定义应用程序和Web网页之间的接口,以便Web网页中的Javascript调用应用程序,提供基于Web的应用程序的API;通过应用程序和Web网页之间的接口,使用页面中的Javascript调用安卓或iOS原生程序为Web页面的展现层提供原生功能的API,并嵌入到所述应用程序,所述原生功能的API能够以Javascript访问移动终端原生的设备功能。
其中较优地,所述原生功能的API为虚拟文档对象模型DOM的API,所述虚拟DOM的API是基于浏览器容器技术对移动终端的硬件设备进行请求并获取对应的数据。
其中较优地,所述方法还包括如下步骤:将安卓操作系统或iOS下的应用程序编程接口API利用虚拟DOM技术,封装为能够被安卓操作系统或iOS调用的统一API。
其中较优地,所述原生功能的API包括下述的一种或多种:获取移动终端定位信息的API、获取移动终端唯一编码的API、读取移动终端相册API和获取来电的API。
其中较优地,所述方法还包括如下步骤:通过Javascript调用所述原生功能的API中的第一原生API获取安卓操作系统或iOS的摄像头请求;通过所述摄像头请求调用所述移动终端的摄像头进行拍摄,并将所拍摄的图像文件保存到预定存储位置;通过预定的事件获取所述图像文件,创建所述图像文件的对象;将所述图像文件转换为预定编码格式的数据;通过onload异步回调进行所述图像文件的读取,记录所述图像文件的读取结果。
其中较优地,所述方法还包括如下步骤:利用分离读写将HTML页面的预定参数的属性修改为触发重排,所述预定参数包括下述的一种或多种:offsetTop、scrollTop和clientTop。
根据本发明实施例的第二方面,提供一种计算机设备,包括:存储器,配置为存储计算机程序或指令;处理器,配置为运行所述计算机程序或指令以使得所述计算机设备实现:使用原生安卓Android或iOS操作系统的应用程序编程接口API来创建嵌入式的超文本标记语言HTML渲染引擎作为移动终端web壳,其中,所述移动终端Web壳是定义应用程序和Web网页之间的接口,以便Web网页中的Javascript调用应用程序,提供基于Web的应用程序的API;通过应用程序和Web网页之间的接口,使用页面中的Javascript调用安卓或iOS原生程序为Web页面的展现层提供原生功能的API,并嵌入到所述应用程序,所述原生功能的API能够以Javascript访问移动终端原生的设备功能。
其中较优地,所述原生功能的API为虚拟文档对象模型DOM的API,所述虚拟DOM的API是基于浏览器容器技术对移动终端的硬件设备进行请求并获取对应的数据。
其中较优地,所述处理器还配置为运行所述计算机程序或指令以使得所述计算机设备实现:将安卓操作系统或iOS下的应用程序编程接口API利用虚拟DOM技术,封装为能够被安卓操作系统或iOS调用的统一API。
其中较优地,所述原生功能的API包括下述的一种或多种:获取移动终端定位信息的API、获取移动终端唯一编码的API、读取移动终端相册API和获取来电的API。
其中较优地,所述处理器还配置为运行所述计算机程序或指令以使得所述计算机设备实现:通过Javascript调用所述原生功能的API中的第一原生API获取安卓操作系统或iOS的摄像头请求;通过所述摄像头请求调用所述移动终端的摄像头进行拍摄,并将所拍摄的图像文件保存到预定存储位置;通过预定的事件获取所述图像文件,创建所述图像文件的对象;将所述图像文件转换为预定编码格式的数据;通过onload异步回调进行所述图像文件的读取,记录所述图像文件的读取结果。
其中较优地,所述处理器还配置为运行所述计算机程序或指令以使得所述计算机设备实现:利用分离读写将HTML页面的预定参数的属性修改为触发重排,所述预定参数包括下述的一种或多种:offsetTop、scrollTop和clientTop。
根据本发明实施例的第三方面,提供一种机器可读的非易失性存储介质,所述存储介质上存储有计算机指令,所述计算机指令被处理器执行时实现上述第一方面所述的数据处理方法。
本发明所提供的移动端跨平台的数据处理方法和设备,由原生的安卓或iOS来创景嵌入式的HTML渲染引擎,通过应用程序和Web页面之间的接口,使用页面中的JavaScript调用原生程序为展现层提供定位和摄像头等原生API,通过重新封装定义的原生功能的API统一访问安卓或iOS设备的硬件设备,无需针对安卓操作系统或iOS系统分别开发对应的硬件设备访问请求,极大减少了软件开发中针对不同平台适配的工作量,提高了移动端的开发效率。
附图说明
图1为根据本发明实施例的移动端跨平台的数据处理方法的示意图;
图2为根据本发明实施例的移动端跨平台的开发架构示意图。
图3为根据本发明实施例的页面的样式示意图。
图4为根据本发明实施例的移动端跨平台的数据处理方案的开发层次示意图。
图5为根据本发明实施例的移动端跨平台的数据处理方案的开发层次示意图。
图6为根据本发明实施例的计算机设备的结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明的技术内容做进一步的详细说明。
需要说明的是,众所周知的模块、单元及其相互之间的连接、链接、通信或操作没有示出或未作详细说明。并且,所描述的特征、架构或功能可在一个或一个以上实施例中以任何方式组合。本领域技术人员应当理解,下述的各种实施例只用于举例说明,而非用于限制本发明的保护范围。还可以容易理解,本文所述和附图所示的各实施例中的模块或单元或处理方式可以按各种不同配置进行组合和设计。
本发明实施例提供一种移动端跨平台的数据处理方法和用于移动端跨平台的数据处理的计算机设备。需要说明的是,本发明实施例中所描述的移动端可以是智能手机、平板电脑等便携式的移动设备,跨平台主要是指可以跨越移动设备所搭载的安卓操作系统和iOS系统,在安卓操作系统和iOS系统两种操作系统中统一运行。
图1为根据本发明实施例的移动端跨平台的数据处理方法的示意图;图2为根据本发明实施例的移动端跨平台的开发架构示意图。接下来结合图1和图2对本发明实施例提供的移动端跨平台开发的具体数据处理方法进行具体的说明。
S101,通过移动终端Web壳使用原生安卓Android或iOS操作系统的应用程序编程接口API来创建嵌入式的超文本标记语言HTML渲染引擎,其中,所述移动终端Web壳是定义应用程序和Web网页之间的接口,以便Web网页中的Javascript调用应用程序,提供基于Web的应用程序的API。
本发明实施例是采用如图2所示的混合开发框架进行开发处理。混合开发框架包括移动终端Web壳、前端交互js和前端适配器,其中前端交互js又包括基础功能js和业务功能js,下面对各个模块进行具体的说明。
移动终端Web壳,是使用安卓操作系统或iOS操作系统的应用程序编程接口(Application Programming Interface,简称API)创建的嵌入式超文本标记语言(HyperText Markup Language,简称HTML)渲染引擎。渲染引擎主要用于HTML页面的渲染,即在浏览器窗口或移动设备中显示所请求的内容。HTML超文本标记语言,用标签构建网页的内容。移动终端Web壳是定义应用程序和Web网页之间的接口,以便Web网页中的Javascript调用应用程序,提供基于Web的应用程序的API。具体而言,壳主要用于定义Android应用程序与网页之间的接口,允许网页中的JavaScript调用Android应用程序,提供基于web的应用程序的Android API,将Web嵌入到Android应用程序中。
前端适配器,是数据和UI(User Interface,用户界面)之间的纽带,在View(ListView,GridView)等地方都需要用到适配器Adapter。Adapter对后端数据进行处理,并告知相应的View在页面中如何布局和运用。
前端交互JS,是封装对DOM(Document Object Model,简称DOM)原生接口的一种方式,将Android操作系统、IOS系统需要单独开发的特性API进行封装,让这两个平台下的API通过一个封装API得到对应响应,例如,请求移动终端的摄像头对于Android操作系统和IOS系统是分别两个原生API,通过封装可以使用统一的具有原生功能的API请求Android操作系统的移动终端、IOS系统的移动终端的摄像头。
本发明实施例中的原生功能的API是基于虚拟DOM的API,该虚拟DOM API是基于浏览器容器技术对移动终端的硬件设备进行请求并获取对应的数据。相应地,本发明的实施例提供的方法,还可包括:将安卓操作系统或iOS下的应用程序编程接口API利用虚拟DOM技术,封装为能够被安卓操作系统或iOS调用的统一API。一方面,通过将安卓操作系统或iOS系统下的API封装为能够为两个平台平滑调用的API,无需针对每个平台单独开发,提高了移动端应用程序开发的效率;另一方面,可以基于封装后的统一的API,设置对应的API调用规则,方便移动端应用程序在安卓平台和iOS平台的跨平台开发。
本发明实施例提供的原生功能的API可包括,但不限于,下述的一种或多种:获取移动终端定位信息的API、获取移动终端唯一编码(例如,国际移动用户识别码IMSI)的API、读取移动终端相册API和获取来电的API。
JavaScript的原生API包括DOM、BOM、Style样式、Canvas、SVG、WebGL等。当前后端分离后,通过API获取到的数据,需要填充到页面中,原生DOM操作非常消耗性能,且传统JS使用字符串拼接的方式不太好用CSS不能像其他程序语言一样,通过变量、计算、继承等方式很好的管理。在移动端开发中,需要将变化的数据实时反应到用户界面(UserInterface,简称UI)上,这时就需要对DOM进行操作,而复杂或频繁的DOM操作如上所述,非常消耗性能,通常是性能瓶颈产生的原因。本发明实施例采用虚拟DOM(Virtual DOM)的机制:在移动端用Javascript实现一套DOM API,例如,获得移动终端定位信息、获取移动终端唯一编码、读取移动终端相册API、获取来电接口navigator.geolocation.getCurrentPosition(callback)。通过针对JavaScript的封装,提供给一些原生功能的API,如实例化后台json数据。通过这组虚拟DOM API,移动应用能够以JavaScript访问原生的设备功能,例如,摄像头、麦克风等。与常用API不同,本发明实施例提供的封装的DOM API是利用浏览器容器技术对移动硬件设备进行请求获取对应数据。容器属于轻量级的操作系统级虚拟化,能够在一个资源隔离的进程中运行应用及其依赖项。运行应用程序所必需的组件会打包成一个镜像并可以复用。执行镜像时,它运行在一个隔离环境中,并且不会共享宿主机的内存、CPU以及磁盘。因此,本发明实施例提供的二次封装API的方式,能够提高移动端应用程序获取硬件设备相关数据的处理效率,改善移动端应用程序的响应性能。
S102,通过应用程序和Web网页之间的接口,使用页面中的Javascript调用安卓或iOS原生程序为页面的展现层提供原生功能的API,并嵌入到所述应用程序,所述原生功能的API能够以Javascript访问移动终端原生的设备功能。
如上所述,本发明实施例通过应用程序和Web网页之间的接口,即移动终端Web壳,使用HTML页面中的Java调用安卓或iOS操作系统中的原生应用程序为HTML页面的展现层提供定位、页面渲染、摄像头等原生API,并将其嵌入到应用程序。原生功能的API能够以JS访问移动终端原生的设备功能,例如,摄像头或麦克风等硬件设备的相关功能。
本发明的一些实施例还可通过JS调用安卓或iOS平台的API将一些H5无法实现或者实现效果不是特别好的程序由原生端实现,实现较好的用户交互体验效果,例如,应用程序中的扫一扫功能等。具体而言,可包括:通过Javascript调用所述原生功能的API中的第一原生API获取安卓操作系统或iOS的摄像头请求;通过所述摄像头请求调用所述移动终端的摄像头进行拍摄,并将所拍摄的图像文件保存到预定存储位置;通过预定的事件获取所述图像文件,创建所述图像文件的对象;将所述图像文件转换为预定编码格式的数据;通过onload异步回调进行所述图像文件的读取,记录所述图像文件的读取结果。在一种具体的实施例中,上述扫一扫的功能具体可通过下述操作实现:
通过HTML JS调用The Media Capture API获得Android/iOS的摄像头请求,可以用摄像头进行拍摄得到对应的图像文件,要获取对应的图像文件,可以在change事件中获取到选择的图像文件或拍摄的照片,创建一个FileReader对象,需要调用readAsDataURL把图像文件转换为base64图像编码,如data:image/jpeg;base64这种格式。通过onload异步回调,当图像文件读取完执行该方法内代码,使用this.result记录读取结果,如果读取失败,该值为null。
在本发明的一些实施例中,需要一套代码适配多种不同屏幕页面,也就是说,需要一套代码适应安卓系统和IOS系统的屏幕页面,利用HTML代码跨平台特性在此基础上集成开发针对Android/iOS的硬件设备方法,例如,摄像头调用请求、GPS位置请求调用等整合成一套解决方案,由JS使用Window.navigator.userAgent.toLowerCase()判断当前移动设备是Android还是iOS,方便开发、调用、发布解决Android/iOS多端适配难的问题。Window为窗口页面,Navigator是HTML中的内置对象,包含浏览器的信息;UserAgent是Navigator的属性方法,可以返回由客户机发送服务器的头部的值,作用其实就是就是返回当前用户所使用的是什么浏览器内核,toLowerCase()是将转换为小写。
本发明的实施例中,为了方便调用和支持在不同的项目中引用自带基础样式,可以自定多种颜色主题集成对UI、动画的渲染进行优化,加速程序运行。本发明提供的方法还可包括:利用分离读写将HTML页面的预定参数的属性修改为触发重排,所述预定参数包括下述的一种或多种:offsetTop、scrollTop和clientTop。具体的方法可包括:利用分离读写将offsetTop,scrollTop,clientTop等属性的修改会触发重排,当界面获取DOM样式的时候立刻会执行一次重排,因为需要计算界面的位置坐标,不会再继续观察下文是否还有DOM的操作,如“div.style.left='10px';div.style.top='10px';”。在一种具体的实施例中,HTML页面可以采用图3所示的样式。clientTop:元素上边框的厚度,当没有指定边框厚底时,一般为0。scrollTop:位于对象最顶端和窗口中可见内容的最顶端之间的距离,简单地说就是滚动后被隐藏的高度。offsetTop:获取对象相对于由offsetParent属性指定的父坐标(css定位的元素或body元素)距离顶端的高度。offsetParent:该属性返回一个对象的引用,这个对象是距离调用offsetParent的元素最近的(在包含层次中最靠近的),已进行过CSS定位的容器元素。如果这个容器元素未进行CSS定位,则offsetParent属性的取值为body元素的引用。当容器元素的style.display被设置为"none"时(译注:IE和Opera除外),offsetParent属性返回null。
本发明实施例提供的移动端跨平台的数据处理方案的开发层次如图4所示,开发方法如图5所示。在开发过程中,代码模式、编译过程、模板组件、数据绑定、生命周期等上层语法是一致的。本发明实施例提供的用于移动端跨平台开发的架构包括Web层、HDF层和客户端层,其中,HDF是指Hierarchical Data Format,可以存储不同类型的图像和数码数据的文件格式,并且可以在不同类型的机器上传输,同时还有统一处理这种文件格式的函数库。Web页面可以通过JS接口、原生接口和HDF接口将数据发送到客户端层。
移动终端(例如,智能手机等)加载预先设置的Node.js统一调用Android/IOS操作系统的移动设备的硬件接口,生成集成工具类、消息提示框、升级模块以及移动终端常见的打电话发短信等标准API,整合完后的使用原生方法将方法的返回值通过js接口传递给页面。例如,IMSI(International Mobile Subscriber Identity,国际移动用户识别码)是用于区分蜂窝网络中不同用户的、在所有蜂窝网络中不重复的识别码,属于字符串数组类型,获取移动设备上插入SIM的国际移动用户识别码,通过远程DOM API获取document.addEventListener("plusready",plusReady,false)。Node.js是一个基于Chrome V8引擎的JavaScript运行环境。Node.js是基于事件驱动、非阻塞式I/O的模型,Node采用一系列“非阻塞”库来支持事件循环的方式。能够为文件系统、数据库之类的资源提供接口。向文件系统发送一个请求时,无需等待硬盘(寻址并检索文件),硬盘准备好的时候非阻塞接口会通知Node。该模型以可扩展的方式简化了对慢资源的访问。
公共方法将Android、IOS相同的业务类型API归集成公共方法,例如获取定位信息、获取通讯录。工具类、公共方法、JS接口等主要是用于实现封装Android、IOS的设备操作接口,方便开发人员在应用接口过程中通过逻辑判断用一套代码运行在Android、IOS两个终端设备上,实现跨平台开发。
页面容器主要用来实现页面的加载,以及对页面加载完成后的后续操作提供支持,例如:文件下载、js支持、文件上传,数据缓存、进度条等;
页面加载接口就是对页面加载过程的监控,如加载进度,百分比,开始加载,加载完成,加载出错等。
本发明实施例使用Node.js+Javascript为核心调用Android/iOS原生方法,增加代码复用,减少开发人员对多个平台差异适配的工作量,降低开发成本,提高程序的性能,提供比Web更好的体验。
本发明实施例还提供一种计算机设备,如图6所示,计算机设备600可包括处理器601和存储器602,其中,存储器602,配置为存储计算机相关程序或指令,处理器601,配置为执行所述计算机相关程序或指令以使得所述计算机设备实现:使用原生安卓Android或iOS操作系统的应用程序编程接口API来创建嵌入式的超文本标记语言HTML渲染引擎作为移动终端web壳,其中,所述移动终端Web壳是定义应用程序和Web网页之间的接口,以便Web网页中的Javascript调用应用程序,提供基于Web的应用程序的API;通过应用程序和Web网页之间的接口,使用页面中的Javascript调用安卓或iOS原生程序为Web页面的展现层提供原生功能的API,并嵌入到所述应用程序,所述原生功能的API能够以Javascript访问移动终端原生的设备功能。
在本发明的一些实施例中,所述原生功能的API为虚拟文档对象模型DOM的API,所述虚拟DOM的API是基于浏览器容器技术对移动终端的硬件设备进行请求并获取对应的数据。
在本发明的一些实施例中,所述处理器还配置为运行所述计算机程序或指令以使得所述计算机设备实现:将安卓操作系统或iOS下的应用程序编程接口API利用虚拟DOM技术,封装为能够被安卓操作系统或iOS调用的统一API。
在本发明的一些实施例中,所述原生功能的API包括下述的一种或多种:获取移动终端定位信息的API、获取移动终端唯一编码的API、读取移动终端相册API和获取来电的API。
在本发明的一些实施例中,所述处理器还配置为运行所述计算机程序或指令以使得所述计算机设备实现:通过Javascript调用所述原生功能的API中的第一原生API获取安卓操作系统或iOS的摄像头请求;通过所述摄像头请求调用所述移动终端的摄像头进行拍摄,并将所拍摄的图像文件保存到预定存储位置;通过预定的事件获取所述图像文件,创建所述图像文件的对象;将所述图像文件转换为预定编码格式的数据;通过onload异步回调进行所述图像文件的读取,记录所述图像文件的读取结果。
在本发明的一些实施例中,所述处理器还配置为运行所述计算机程序或指令以使得所述计算机设备实现:利用分离读写将HTML页面的预定参数的属性修改为触发重排,所述预定参数包括下述的一种或多种:offsetTop、scrollTop和clientTop。
计算机设备的具体实施例可参考上面方法实施例部分的相关描述,在此不再赘述。
本发明实施例还提供一种计算机可读的非易失性存储介质,所述存储介质上存储有计算机程序或指令,所述计算机程序或指令运行时实现上面实施例所描述的方法。
通过以上的实施例的描述,本领域的技术人员可以清楚地了解到本发明可借助软件结合硬件平台的方式来实现。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,智能手机或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的数据处理方法。
需要指出的是,上面所描述的实施例仅是本发明实施例的一部分,而不是全部。上面所述的各种实施例,可以根据需要进行各种组合。本发明说明书中使用的术语和措辞仅仅为了举例说明,并不意味对本发明的权利要求构成限定。
上面对本发明所提供的移动端跨平台的数据处理方法和设备进行了详细的说明。对本领域的一般技术人员而言,在不背离本发明实质内容的前提下对它所做的任何显而易见的改动,都将构成对本发明专利权的侵犯,将承担相应的法律责任。
Claims (10)
1.一种移动端跨平台的数据处理方法,其特征在于包括如下步骤:
使用原生安卓Android或iOS操作系统的应用程序编程接口API来创建嵌入式的超文本标记语言HTML渲染引擎作为移动终端web壳,其中,所述移动终端Web壳是定义应用程序和Web网页之间的接口,以便Web网页中的Javascript调用应用程序,提供基于Web的应用程序的API;
通过应用程序和Web网页之间的接口,使用页面中的Javascript调用安卓或iOS原生程序为Web页面的展现层提供原生功能的API,并嵌入到所述应用程序,所述原生功能的API能够以Javascript访问移动终端原生的设备功能。
2.如权利要求1所述的数据处理方法,其特征在于:
所述原生功能的API为虚拟文档对象模型DOM的API,所述虚拟DOM的API是基于浏览器容器技术对移动终端的硬件设备进行请求并获取对应的数据。
3.如权利要求2所述的数据处理方法,其特征在于还包括:
将安卓操作系统或iOS下的应用程序编程接口API利用虚拟DOM技术,封装为能够被安卓操作系统或iOS调用的统一API。
4.如权利要求3所述的数据处理方法,其特征在于:
所述原生功能的API包括下述的一种或多种:获取移动终端定位信息的API、获取移动终端唯一编码的API、读取移动终端相册API和获取来电的API。
5.如权利要求4所述的数据处理方法,其特征在于还包括:
通过Javascript调用所述原生功能的API中的第一原生API获取安卓操作系统或iOS的摄像头请求;
通过所述摄像头请求调用所述移动终端的摄像头进行拍摄,并将所拍摄的图像文件保存到预定存储位置;
通过预定的事件获取所述图像文件,创建所述图像文件的对象;
将所述图像文件转换为预定编码格式的数据;
通过onload异步回调进行所述图像文件的读取,记录所述图像文件的读取结果。
6.如权利要求1所述的数据处理方法,其特征在于还包括:
利用分离读写将HTML页面的预定参数的属性修改为触发重排,所述预定参数包括下述的一种或多种:offsetTop、scrollTop和clientTop。
7.一种计算机设备,其特征在于包括:
存储器,配置为存储计算机程序或指令;
处理器,配置为运行所述计算机程序或指令以使得所述计算机设备实现:使用原生安卓Android或iOS操作系统的应用程序编程接口API来创建嵌入式的超文本标记语言HTML渲染引擎作为移动终端web壳,其中,所述移动终端Web壳是定义应用程序和Web网页之间的接口,以便Web网页中的Javascript调用应用程序,提供基于Web的应用程序的API;
通过应用程序和Web网页之间的接口,使用页面中的Javascript调用安卓或iOS原生程序为Web页面的展现层提供原生功能的API,并嵌入到所述应用程序,所述原生功能的API能够以Javascript访问移动终端原生的设备功能。
8.如权利要求7所述的计算机设备,其特征在于:
所述原生功能的API为虚拟文档对象模型DOM的API,所述虚拟DOM的API是基于浏览器容器技术对移动终端的硬件设备进行请求并获取对应的数据。
9.如权利要求8所述的计算机设备,其特征在于:
所述处理器,还配置为运行所述计算机程序或指令以使得所述计算机设备实现:
将安卓操作系统或iOS下的应用程序编程接口API利用虚拟DOM技术,封装为能够被安卓操作系统或iOS调用的统一API。
10.如权利要求9所述的计算机设备,其特征在于:
所述处理器,还配置为运行所述计算机程序或指令以使得所述计算机设备实现:
通过Javascript调用所述原生功能的API中的第一原生API获取安卓操作系统或iOS的摄像头请求;
通过所述摄像头请求调用所述移动终端的摄像头进行拍摄,并将所拍摄的图像文件保存到预定存储位置;
通过预定的事件获取所述图像文件,创建所述图像文件的对象;
将所述图像文件转换为预定编码格式的数据;
通过onload异步回调进行所述图像文件的读取,记录所述图像文件的读取结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911229537.4A CN110908712A (zh) | 2019-12-04 | 2019-12-04 | 移动端跨平台的数据处理方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911229537.4A CN110908712A (zh) | 2019-12-04 | 2019-12-04 | 移动端跨平台的数据处理方法和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110908712A true CN110908712A (zh) | 2020-03-24 |
Family
ID=69822317
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911229537.4A Pending CN110908712A (zh) | 2019-12-04 | 2019-12-04 | 移动端跨平台的数据处理方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110908712A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111639290A (zh) * | 2020-05-22 | 2020-09-08 | 中国工商银行股份有限公司 | 一种对线上渠道金融产品访问的处理方法及装置 |
CN112035157A (zh) * | 2020-08-21 | 2020-12-04 | 山东亚华电子股份有限公司 | 一种安卓与前端页面通信的方法、设备及存储介质 |
CN112328297A (zh) * | 2020-11-30 | 2021-02-05 | 北京技德系统技术有限公司 | 一种在Linux上兼容运行的Android系统的升级方法与装置 |
CN112579959A (zh) * | 2020-12-24 | 2021-03-30 | 京东数字科技控股股份有限公司 | 应用程序的处理方法、装置、设备、存储介质和产品 |
CN112799665A (zh) * | 2021-01-27 | 2021-05-14 | 视若飞信息科技(上海)有限公司 | 一种以WebUI的方式构建App功能界面的方法 |
CN112882690A (zh) * | 2021-01-28 | 2021-06-01 | 北京字节跳动网络技术有限公司 | 一种应用开发方法及装置 |
CN112988418A (zh) * | 2021-03-05 | 2021-06-18 | 杭州天阙科技有限公司 | Web端与移动端的通信方法、移动终端及系统 |
CN113515342A (zh) * | 2021-04-09 | 2021-10-19 | 武汉天喻信息产业股份有限公司 | 一种web应用程序访问nfc智能卡的方法及中间件 |
CN115103116A (zh) * | 2022-06-16 | 2022-09-23 | 北京字跳网络技术有限公司 | 摄像头数据获取方法、装置、设备、存储介质及程序产品 |
CN116126320A (zh) * | 2022-12-21 | 2023-05-16 | 瑞庭网络技术(上海)有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN117056173A (zh) * | 2023-10-12 | 2023-11-14 | 麒麟软件有限公司 | 在Web操作系统上监控安卓应用生命周期的方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8954989B1 (en) * | 2007-11-19 | 2015-02-10 | Appcelerator, Inc. | Flexible, event-driven JavaScript server architecture |
CN104572042A (zh) * | 2013-10-15 | 2015-04-29 | 航天信息股份有限公司 | 移动终端设备的跨平台中间件装置及其实现方法 |
CN105786513A (zh) * | 2016-02-29 | 2016-07-20 | 四川长虹电器股份有限公司 | 基于Html5的混合移动应用开发方法 |
CN106020845A (zh) * | 2016-05-31 | 2016-10-12 | 广东能龙教育股份有限公司 | 一种客户端混合快速开发方法 |
CN107870821A (zh) * | 2016-09-26 | 2018-04-03 | 平安科技(深圳)有限公司 | 应用程序的跨平台调用方法及系统 |
CN109976831A (zh) * | 2019-03-28 | 2019-07-05 | 山东浪潮通软信息科技有限公司 | 一种JavaScript和原生APP之间数据交互方法 |
CN110166467A (zh) * | 2019-05-28 | 2019-08-23 | 重庆科技学院 | 基于html_web网关的plc跨平台控制方法 |
-
2019
- 2019-12-04 CN CN201911229537.4A patent/CN110908712A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8954989B1 (en) * | 2007-11-19 | 2015-02-10 | Appcelerator, Inc. | Flexible, event-driven JavaScript server architecture |
CN104572042A (zh) * | 2013-10-15 | 2015-04-29 | 航天信息股份有限公司 | 移动终端设备的跨平台中间件装置及其实现方法 |
CN105786513A (zh) * | 2016-02-29 | 2016-07-20 | 四川长虹电器股份有限公司 | 基于Html5的混合移动应用开发方法 |
CN106020845A (zh) * | 2016-05-31 | 2016-10-12 | 广东能龙教育股份有限公司 | 一种客户端混合快速开发方法 |
CN107870821A (zh) * | 2016-09-26 | 2018-04-03 | 平安科技(深圳)有限公司 | 应用程序的跨平台调用方法及系统 |
CN109976831A (zh) * | 2019-03-28 | 2019-07-05 | 山东浪潮通软信息科技有限公司 | 一种JavaScript和原生APP之间数据交互方法 |
CN110166467A (zh) * | 2019-05-28 | 2019-08-23 | 重庆科技学院 | 基于html_web网关的plc跨平台控制方法 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111639290B (zh) * | 2020-05-22 | 2024-04-09 | 中国工商银行股份有限公司 | 一种对线上渠道金融产品访问的处理方法及装置 |
CN111639290A (zh) * | 2020-05-22 | 2020-09-08 | 中国工商银行股份有限公司 | 一种对线上渠道金融产品访问的处理方法及装置 |
CN112035157A (zh) * | 2020-08-21 | 2020-12-04 | 山东亚华电子股份有限公司 | 一种安卓与前端页面通信的方法、设备及存储介质 |
CN112035157B (zh) * | 2020-08-21 | 2023-10-20 | 山东亚华电子股份有限公司 | 一种安卓与前端页面通信的方法、设备及存储介质 |
CN112328297A (zh) * | 2020-11-30 | 2021-02-05 | 北京技德系统技术有限公司 | 一种在Linux上兼容运行的Android系统的升级方法与装置 |
CN112579959A (zh) * | 2020-12-24 | 2021-03-30 | 京东数字科技控股股份有限公司 | 应用程序的处理方法、装置、设备、存储介质和产品 |
CN112799665A (zh) * | 2021-01-27 | 2021-05-14 | 视若飞信息科技(上海)有限公司 | 一种以WebUI的方式构建App功能界面的方法 |
CN112882690A (zh) * | 2021-01-28 | 2021-06-01 | 北京字节跳动网络技术有限公司 | 一种应用开发方法及装置 |
CN112882690B (zh) * | 2021-01-28 | 2024-04-19 | 抖音视界有限公司 | 一种应用开发方法及装置 |
CN112988418A (zh) * | 2021-03-05 | 2021-06-18 | 杭州天阙科技有限公司 | Web端与移动端的通信方法、移动终端及系统 |
CN113515342A (zh) * | 2021-04-09 | 2021-10-19 | 武汉天喻信息产业股份有限公司 | 一种web应用程序访问nfc智能卡的方法及中间件 |
CN115103116A (zh) * | 2022-06-16 | 2022-09-23 | 北京字跳网络技术有限公司 | 摄像头数据获取方法、装置、设备、存储介质及程序产品 |
CN116126320B (zh) * | 2022-12-21 | 2024-02-23 | 瑞庭网络技术(上海)有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN116126320A (zh) * | 2022-12-21 | 2023-05-16 | 瑞庭网络技术(上海)有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN117056173B (zh) * | 2023-10-12 | 2024-01-30 | 麒麟软件有限公司 | 在Web操作系统上监控安卓应用生命周期的方法 |
CN117056173A (zh) * | 2023-10-12 | 2023-11-14 | 麒麟软件有限公司 | 在Web操作系统上监控安卓应用生命周期的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110908712A (zh) | 移动端跨平台的数据处理方法和设备 | |
US10726195B2 (en) | Filtered stylesheets | |
US20200410031A1 (en) | Systems and methods for cloud computing | |
CN104866383B (zh) | 一种接口调用方法、装置及终端 | |
CN108572965B (zh) | 一种资源加载方法及装置 | |
US7162687B2 (en) | JSP tag libraries and web services | |
US10713420B2 (en) | Composition and declaration of sprited images in a web page style sheet | |
CN107766532A (zh) | 一种前端Node.js自动化正静态方法 | |
CN108021356B (zh) | 一种跨屏跨平台的可量测实景地图组织方法 | |
KR20150079867A (ko) | Html5-프로토콜 기반 웹페이지 표시 방법 및 장치 | |
CN105607895A (zh) | 一种基于应用程序编程接口的应用程序的运行方法和装置 | |
CN105637478A (zh) | 原生移动应用代码的计算机辅助开发 | |
US11003835B2 (en) | System and method to convert a webpage built on a legacy framework to a webpage compatible with a target framework | |
JP7538948B2 (ja) | 画像処理方法及び装置、並びにコンピュータ可読記憶媒体 | |
CN113419729B (zh) | 基于组件化的前端页面搭建方法、装置、设备及存储介质 | |
WO2016005884A2 (en) | Javascript-based, client-side template driver system | |
CN111723314B (zh) | 网页展示方法、装置、电子设备及计算机可读存储介质 | |
CN105988814B (zh) | 界面生成方法及装置 | |
CN102253986A (zh) | 提高多终端网页显示效果的方法和装置 | |
CN116737200A (zh) | 一种应用更新方法以及装置 | |
CN115421693A (zh) | 微前端架构的实现方法、装置、计算机设备和存储介质 | |
CN115390835A (zh) | 一种小程序标签化搜索框的构建方法及设备 | |
CN115131470A (zh) | 一种图文素材合成方法、装置、电子设备和存储介质 | |
CN113626016A (zh) | 一种基于Vue+Element UI+Koa2的前后端分离的可重用组件 | |
CN114528510A (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 |