CN104239071A - 一种基于通用组件和中转服务的跨平台移动应用开发框架系统 - Google Patents

一种基于通用组件和中转服务的跨平台移动应用开发框架系统 Download PDF

Info

Publication number
CN104239071A
CN104239071A CN201410540158.8A CN201410540158A CN104239071A CN 104239071 A CN104239071 A CN 104239071A CN 201410540158 A CN201410540158 A CN 201410540158A CN 104239071 A CN104239071 A CN 104239071A
Authority
CN
China
Prior art keywords
layer
transfer
service
cross
primary
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
Application number
CN201410540158.8A
Other languages
English (en)
Inventor
肖雪
冯向阳
吴志强
马群
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Communication Information System Co Ltd
Original Assignee
Inspur Communication Information System Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Communication Information System Co Ltd filed Critical Inspur Communication Information System Co Ltd
Priority to CN201410540158.8A priority Critical patent/CN104239071A/zh
Publication of CN104239071A publication Critical patent/CN104239071A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于通用组件和中转服务的跨平台移动应用开发框架系统,属于移动互联网领域。该框架系统主要由前端逻辑层、底层原生层及中转服务层构成,所述前端逻辑层通过HTML、CSS、JavaScript所构成的组件实现跨平台的应用开发、与底层原生层开放的JavaScript接口配合实现手机原生功能的调用;所述底层原生层为前端组件库开放JavaScript接口以实现手机原生功能的调用、通过服务中转层提供服务地址保护;所述中转服务层通过中转分发对后台服务地址进行保护、通过配置实现测试环境和正式环境的切换。与现有技术相比,本发明的开发框架系统可以解决开发者无法自由扩展和后台业务地址及数据源暴露的问题,具有很好的推广应用价值。

Description

一种基于通用组件和中转服务的跨平台移动应用开发框架系统
技术领域
本发明涉及移动互联网领域,具体地说是一种基于通用组件和中转服务的跨平台移动应用开发框架系统。
背景技术
随着智能移动终端的普及和移动互联网的飞速发展,移动应用的市场需求不断扩大,PC上的应用和功能开始往移动终端扩展。而面对众多的同质化移动应用,用户对移动应用的品质要求也在逐步提升。对于开发者来说,要从PC软件开发向移动开发过渡,一方面要熟悉移动终端的诸多新功能,另一方面也要考虑多系统多屏幕尺寸的兼容性。若采用原生语言开发,则存在以下几个问题:
(1)  针对多个操作系统的多种原生语言的学习成本高,人力资源需求大;
(2)  同一软件在多个操作系统下的开发过程重复,开发成本浪费;
(3)  多版本的迭代过程缓慢,需求无法快速得到响应和满足。
在这样的情况下,本领域开发了许多跨平台的移动应用开发框架,基本的实现方式为:允许用户通过HTML、CSS和JavaScript搭建前端功能,然后将其封装入不同平台的底层容器中,实现多系统的分发。
然而当前的移动应用开发框架大多为封闭系统,一方面,用户所需但是当前系统不具备的功能,无法得到及时的开发和扩展;另一方面,使用WEB语言搭建的系统,前端逻辑由HTML和相应的JavaScript实现,后台服务的业务地址会被暴露出来,对后台程序和数据的稳定性和安全性有极大威胁。
发明内容
本发明的技术任务是针对上述现有技术的不足,提供一种基于通用组件和中转服务的跨平台移动应用开发框架系统。该框架系统可以解决当前移动开发和现有移动应用开发框架所遇到的开发者无法自由扩展和后台业务地址及数据源暴露的问题。
本发明的技术任务是按以下方式实现的:一种基于通用组件和中转服务的跨平台移动应用开发框架系统,其特征在于:主要由前端逻辑层、底层原生层及中转服务层构成,
所述前端逻辑层通过HTML、CSS、JavaScript所构成的组件实现跨平台的应用开发、与底层原生层开放的JavaScript接口配合实现手机原生功能的调用、提供可扩展的规范以丰富现有组件库;
所述底层原生层为前端组件库开放JavaScript接口以实现手机原生功能的调用、通过服务中转层提供服务地址保护、提供可扩展的规范以丰富现有接口;
所述中转服务层通过中转分发对后台服务地址进行保护、通过配置实现测试环境和正式环境的切换。
所述前端逻辑层中由HTML负责主体内容呈现,CSS负责页面样式调整,JavaScript负责前端逻辑的处理。
前端逻辑层包括前端表现组件及前端组件的扩展接口文档,所述前端表现组件包括图表组件、表单组件、按钮组件、表格组件、滑动图片展示组件。
底层原生层包括原生功能接口及底层原生层的扩展接口文档,所述原生功能接口包括调取摄像头、调取麦克风、调取蓝牙设备、获取系统基本信息、获取地理位置信息、获取文件系统。
所述中转服务层负责接收前端发起的由原生层传递的数据请求,并将其分发到具体业务地址,然后将返回值通过原生层传递回前端。
本发明所述原生应用(功能):指用手机操作系统直接支持的编程语言编写的应用,可以调用系统的硬件功能,其中安卓(Android)操作系统对应Java,苹果(IOS)操作系统对应Objective-C和Swift。
底层:指应用中使用原生语言开发的部分,特别的,在本发明中指使用原生语言开发的底层容器,用于承载前端的Web部分。
前端:指应用中使用Web开发语言(如HTML、CSS、JavaScript等)开发的部分,特别的,在本发明中指被底层原生容器承载的部分,用于实现主要的应用逻辑。
业务服务:指应用正常使用所对应的具有生产和使用价值的后台服务,区别于中转服务。
数据源:指应用所使用的业务服务中数据的来源。
中转服务:指本发明所提出的,应用与所需业务服务之间的后台服务,用于保护业务服务地址的私密性和安全性,区别于业务服务。
开发环境:指应用进行开发和测试时所使用的非正式环境。
生产环境:指应用实际投入生产和使用时所使用的正式环境。
基于本发明的移动应用开发框架系统,可通过已有的前端和原生通用组件完成跨平台、多屏幕尺寸的移动应用的快速生成;同时,基于框架提供的扩展接口和文档,用户可方便的自主开发前端组件和原生功能,满足个性化需求;第三,通过中间JavaScript接口,前端WEB页面可直接调用移动设备的原生功能,让生成的混生应用拥有Web应用的反应速度和原生应用的使用体验;第四,通过特有的中转服务,可保护后台业务地址和业务数据源的隐密性和安全性。
综合以上几点,在保证体验和安全性的同时,拥有PC端前端开发经验的开发者即可快速生成个性化高品质的移动应用,降低了开发人员的学习成本和开发成本,缩短了开发时间、提高了移动应用的开发效率。
附图说明
附图1是本发明基于通用组件和中转服务的跨平台移动应用开发框架系统的组成体系示意图;
附图2是本发明框架系统中对系统原生功能调用的流程示意图;
附图3是本发明框架系统中对中转服务调用的流程示意图。
具体实施方式
参照说明书附图以具体实施例对本发明的一种基于通用组件和中转服务的跨平台移动应用开发框架系统作以下详细地说明。
如附图1所示,本发明的移动应用开发框架系统由前端逻辑层、底层原生层和中转服务层三部分组成。
其中,前端逻辑层由HTML负责主体内容呈现,CSS负责页面样式调整、JavaScript负责前端逻辑的处理。三者确保了应用的主体功能是跨平台的,并且框架内采用响应式的前端布局设计,可自动适应多种不同屏幕尺寸。同时,框架自身已提供了丰富的前端表现组件,包括但不限于图表组件、表单组件、按钮组件、表格组件、滑动图片展示组件等,通过简单配置即可直接引入应用当中;而且,框架提供了前端组件的扩展接口文档,开发者依照文档,可快速构建个性化的前端组件。另外,通过底层原生层暴露的JavaScript接口,前端组件可以直接调用移动终端的原生功能。最后,前端部分可通过底层原生层暴露的中转服务接口访问业务服务,在不暴露业务地址的情况下实现数据传输。
底层原生层由原生语言编写,其中安卓(Android)对应Java,苹果操作系统(IOS)对应Objective-C。框架的底层原生层提供了对移动终端原生功能的封装、并暴露出JavaScript接口供前端JavaScript调用。同时,框架自身已提供了丰富的原生功能接口,包括但不限于调取摄像头、调取麦克风、调取蓝牙设备、获取系统基本信息、获取地理位置信息、获取文件系统等,前端可以直接进行调用;而且框架提供了底层原生层的扩展接口文档,开发者依照文档,可快速扩展底层功能,满足个性化需求。另外,底层原生层与中转服务对接,将中转服务地址封装在原生代码中,并向前端暴露中转服务接口。
中转服务层作为接口,对实现语言没有特殊要求,可使用Java、PHP、ASP.NET等语言编写,同时,传递的参数格式支持字符串、数组、XML和JSON字符串。中转服务负责接收前端发起的由原生层传递的数据请求,并将其分发到具体业务地址,然后将返回值通过原生层传递回前端。同时,本发明提供了对于开发环境和生产环境的中转服务的配置切换功能,通过本发明开发的应用可以通过配置,在开发环境模拟的中转服务下进行测试,当测试通过后,可通过配置切换为生产环境,直接投入使用。
上述框架系统中系统原生功能调用流程,如附图2所示:
步骤1:前端发起系统功能的调用请求,将调用内容和回调函数传给原生层相应的JavaScript接口;
步骤2:JavaScript接口将调用内容解析为原生调用请求,传递给相应的原生层;
步骤3:原生层接受调用请求,并调用移动终端的相应功能;
步骤4:移动终端将调用结果返回给原生层;
步骤5:原生层将移动终端功能的调用结果返回给JavaScript接口;
步骤6:JavaScript接口根据调用结果,将对应的回调函数请求返回给前端;
步骤7:前端执行相应的回调函数,完成原生功能的调用。
中转服务的调用流程,如附图3所示:
步骤1:前端发起业务数据接口的调用请求,将调用内容和回调函数传给原生层相应的JavaScript接口;
步骤2:JavaScript接口将调用内容解析为业务数据接口调用请求,传递给相应的原生层;
步骤3:原生层接受调用请求,将参数传递给中转服务;
步骤4:中转服务根据传入参数将请求分发给对应的业务逻辑地址;
步骤5:业务逻辑地址将执行结果返回给中转服务;
步骤6:中转服务将执行结果返回给原生层;
步骤7:原生层将执行结果返回给JavaScript接口;
步骤8:JavaScript接口根据执行情况,将执行结果和对应的回调函数返回给前端;
步骤9:前端执行相应的回调函数,完成数据透传。

Claims (5)

1.一种基于通用组件和中转服务的跨平台移动应用开发框架系统,其特征在于:主要由前端逻辑层、底层原生层及中转服务层构成,
所述前端逻辑层通过HTML、CSS、JavaScript所构成的组件实现跨平台的应用开发、与底层原生层开放的JavaScript接口配合实现手机原生功能的调用、提供可扩展的规范以丰富现有组件库;
所述底层原生层为前端组件库开放JavaScript接口以实现手机原生功能的调用、通过服务中转层提供服务地址保护、提供可扩展的规范以丰富现有接口;
所述中转服务层通过中转分发对后台服务地址进行保护、通过配置实现测试环境和正式环境的切换。
2.根据权利要求1所述的基于通用组件和中转服务的跨平台移动应用开发框架系统,其特征在于前端逻辑层中由HTML负责主体内容呈现,CSS负责页面样式调整,JavaScript负责前端逻辑的处理。
3.根据权利要求1所述的基于通用组件和中转服务的跨平台移动应用开发框架系统,其特征在于前端逻辑层包括前端表现组件及前端组件的扩展接口文档,所述前端表现组件包括图表组件、表单组件、按钮组件、表格组件、滑动图片展示组件。
4.根据权利要求1所述的基于通用组件和中转服务的跨平台移动应用开发框架系统,其特征在于底层原生层包括原生功能接口及底层原生层的扩展接口文档,所述原生功能接口包括调取摄像头、调取麦克风、调取蓝牙设备、获取系统基本信息、获取地理位置信息、获取文件系统。
5.根据权利要求1所述的基于通用组件和中转服务的跨平台移动应用开发框架系统,其特征在于中转服务层负责接收前端发起的由原生层传递的数据请求,并将其分发到具体业务地址,然后将返回值通过原生层传递回前端。
CN201410540158.8A 2014-10-13 2014-10-13 一种基于通用组件和中转服务的跨平台移动应用开发框架系统 Pending CN104239071A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410540158.8A CN104239071A (zh) 2014-10-13 2014-10-13 一种基于通用组件和中转服务的跨平台移动应用开发框架系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410540158.8A CN104239071A (zh) 2014-10-13 2014-10-13 一种基于通用组件和中转服务的跨平台移动应用开发框架系统

Publications (1)

Publication Number Publication Date
CN104239071A true CN104239071A (zh) 2014-12-24

Family

ID=52227213

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410540158.8A Pending CN104239071A (zh) 2014-10-13 2014-10-13 一种基于通用组件和中转服务的跨平台移动应用开发框架系统

Country Status (1)

Country Link
CN (1) CN104239071A (zh)

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104615462A (zh) * 2015-01-26 2015-05-13 北京邮电大学 跨平台的移动应用生成服务端及系统
CN104636147A (zh) * 2015-03-09 2015-05-20 北京恒华伟业科技股份有限公司 一种跨平台移动应用的实现方法和系统
CN104750487A (zh) * 2015-03-25 2015-07-01 广州市悦智计算机有限公司 一种移动终端app的开发方法及启动方法
CN104834519A (zh) * 2015-04-04 2015-08-12 杭州中焯信息技术股份有限公司 跨平台的应用软件开发系统
CN105245439A (zh) * 2015-10-15 2016-01-13 浪潮软件股份有限公司 一种浏览器与硬件设备进行交互的方法及装置
CN105447198A (zh) * 2015-12-30 2016-03-30 深圳市瑞铭无限科技有限公司 页面脚本便捷导入的方法及装置
CN105573129A (zh) * 2015-11-10 2016-05-11 华南理工大学 基于Cordova的跨平台智能家居移动终端
CN105635265A (zh) * 2015-12-24 2016-06-01 国云科技股份有限公司 一种基于react-native快速实现移动端数据上传的方法
CN105786522A (zh) * 2016-03-17 2016-07-20 无锡威泰迅电力科技有限公司 基于Node.js平台的WEB前端通用组件
CN105787043A (zh) * 2016-02-26 2016-07-20 浪潮通信信息系统有限公司 一种跨平台商业银行移动应用分发管理模式
CN105955744A (zh) * 2016-05-03 2016-09-21 中国建设银行股份有限公司 一种移动跨平台开发系统及方法
CN106155697A (zh) * 2016-07-30 2016-11-23 北京慧摩尔科技有限公司 一种面向服务的开发框架(YC‑Framework)
CN106293743A (zh) * 2016-08-11 2017-01-04 上海泛微网络科技股份有限公司 一种移动建模系统及构建移动应用并实现跨平台发布的方法
CN106842969A (zh) * 2017-02-13 2017-06-13 浙江风向标科技有限公司 设备控制方法及装置
CN107193565A (zh) * 2017-05-22 2017-09-22 北京思序软件有限公司 跨移动端开发原生app的方法
CN107957911A (zh) * 2016-10-18 2018-04-24 腾讯科技(深圳)有限公司 组件调用的方法和装置、组件数据处理的方法和装置
CN107991905A (zh) * 2017-12-25 2018-05-04 南京邮电大学 一种基于Web的多无人机任务规划的仿真系统
CN109032606A (zh) * 2018-07-10 2018-12-18 北京小米移动软件有限公司 原生应用程序的编译处理方法、装置及终端
CN109144479A (zh) * 2018-07-20 2019-01-04 中国邮政储蓄银行股份有限公司 开发架构
CN109150532A (zh) * 2018-08-23 2019-01-04 海南新软软件有限公司 一种Onchain钱包私钥的加密和解密方法、装置及客户端架构
CN109284093A (zh) * 2018-10-26 2019-01-29 深圳易嘉恩科技有限公司 基于前端技术的跨平台应用开发框架及其实现方法
CN109471614A (zh) * 2018-11-01 2019-03-15 上海找钢网信息科技股份有限公司 应用程序混合开发的方法及装置
CN109684192A (zh) * 2018-08-21 2019-04-26 平安普惠企业管理有限公司 基于数据处理的本地测试方法、设备、存储介质及装置
CN111176627A (zh) * 2019-12-06 2020-05-19 深圳市科南软件有限公司 一种基于微服务的前后端分离的装置与方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
刘波 等: "基于.NET平台通用数据库组件的设计与实现", 《计算机工程与设计》 *
陆钢 等: "智能终端跨平台应用开发技术研究", 《电信科学》 *
陈桦 等: "移动智能终端Web应用平台开发技术研究", 《移动通信》 *

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104615462B (zh) * 2015-01-26 2018-04-06 北京邮电大学 跨平台的移动应用生成服务端及系统
CN104615462A (zh) * 2015-01-26 2015-05-13 北京邮电大学 跨平台的移动应用生成服务端及系统
CN104636147A (zh) * 2015-03-09 2015-05-20 北京恒华伟业科技股份有限公司 一种跨平台移动应用的实现方法和系统
CN104750487A (zh) * 2015-03-25 2015-07-01 广州市悦智计算机有限公司 一种移动终端app的开发方法及启动方法
CN104750487B (zh) * 2015-03-25 2019-06-28 广州市悦智计算机有限公司 一种移动终端app的开发方法及启动方法
CN104834519A (zh) * 2015-04-04 2015-08-12 杭州中焯信息技术股份有限公司 跨平台的应用软件开发系统
CN105245439A (zh) * 2015-10-15 2016-01-13 浪潮软件股份有限公司 一种浏览器与硬件设备进行交互的方法及装置
CN105573129A (zh) * 2015-11-10 2016-05-11 华南理工大学 基于Cordova的跨平台智能家居移动终端
CN105573129B (zh) * 2015-11-10 2019-04-09 华南理工大学 基于Cordova的跨平台智能家居移动终端
CN105635265A (zh) * 2015-12-24 2016-06-01 国云科技股份有限公司 一种基于react-native快速实现移动端数据上传的方法
CN105447198A (zh) * 2015-12-30 2016-03-30 深圳市瑞铭无限科技有限公司 页面脚本便捷导入的方法及装置
CN105787043A (zh) * 2016-02-26 2016-07-20 浪潮通信信息系统有限公司 一种跨平台商业银行移动应用分发管理模式
CN105786522A (zh) * 2016-03-17 2016-07-20 无锡威泰迅电力科技有限公司 基于Node.js平台的WEB前端通用组件
CN105955744A (zh) * 2016-05-03 2016-09-21 中国建设银行股份有限公司 一种移动跨平台开发系统及方法
CN106155697A (zh) * 2016-07-30 2016-11-23 北京慧摩尔科技有限公司 一种面向服务的开发框架(YC‑Framework)
CN106293743A (zh) * 2016-08-11 2017-01-04 上海泛微网络科技股份有限公司 一种移动建模系统及构建移动应用并实现跨平台发布的方法
US10740114B2 (en) 2016-10-18 2020-08-11 Tencent Technology (Shenzhen) Company Limited Component invoking method and apparatus, and component data processing method and apparatus
WO2018072626A1 (zh) * 2016-10-18 2018-04-26 腾讯科技(深圳)有限公司 组件调用的方法和装置、组件数据处理的方法和装置
CN107957911B (zh) * 2016-10-18 2019-07-05 腾讯科技(深圳)有限公司 组件调用的方法和装置、组件数据处理的方法和装置
CN107957911A (zh) * 2016-10-18 2018-04-24 腾讯科技(深圳)有限公司 组件调用的方法和装置、组件数据处理的方法和装置
CN106842969A (zh) * 2017-02-13 2017-06-13 浙江风向标科技有限公司 设备控制方法及装置
CN107193565B (zh) * 2017-05-22 2021-02-26 北京思序软件有限公司 跨移动端开发原生app的方法
CN107193565A (zh) * 2017-05-22 2017-09-22 北京思序软件有限公司 跨移动端开发原生app的方法
CN107991905A (zh) * 2017-12-25 2018-05-04 南京邮电大学 一种基于Web的多无人机任务规划的仿真系统
CN109032606A (zh) * 2018-07-10 2018-12-18 北京小米移动软件有限公司 原生应用程序的编译处理方法、装置及终端
CN109032606B (zh) * 2018-07-10 2022-03-01 北京小米移动软件有限公司 原生应用程序的编译处理方法、装置及终端
CN109144479A (zh) * 2018-07-20 2019-01-04 中国邮政储蓄银行股份有限公司 开发架构
CN109684192A (zh) * 2018-08-21 2019-04-26 平安普惠企业管理有限公司 基于数据处理的本地测试方法、设备、存储介质及装置
CN109684192B (zh) * 2018-08-21 2024-03-01 天航长鹰(江苏)科技有限公司 基于数据处理的本地测试方法、设备、存储介质及装置
CN109150532A (zh) * 2018-08-23 2019-01-04 海南新软软件有限公司 一种Onchain钱包私钥的加密和解密方法、装置及客户端架构
CN109284093A (zh) * 2018-10-26 2019-01-29 深圳易嘉恩科技有限公司 基于前端技术的跨平台应用开发框架及其实现方法
CN109471614A (zh) * 2018-11-01 2019-03-15 上海找钢网信息科技股份有限公司 应用程序混合开发的方法及装置
CN111176627A (zh) * 2019-12-06 2020-05-19 深圳市科南软件有限公司 一种基于微服务的前后端分离的装置与方法

Similar Documents

Publication Publication Date Title
CN104239071A (zh) 一种基于通用组件和中转服务的跨平台移动应用开发框架系统
Boulos et al. Web GIS in practice VIII: HTML5 and the canvas element for interactive online mapping
WO2020221056A1 (zh) 图像绘制的方法、装置、电子设备及计算机存储介质
De Andrade et al. Cross platform app: a comparative study
EP4130963A1 (en) Object dragging method and device
CN107992301A (zh) 用户界面实现方法、客户端及存储介质
TWI453603B (zh) 平台無關之資訊處理系統,其通訊方法,及其電腦程式產品
CN103530096A (zh) 远程控制方法、远程控制设备和显示设备
CN105160951B (zh) 一种基于移动设备的白板教学方法及系统
CN105824900A (zh) 一种基于react-native的页面展示系统
CN106610826B (zh) 在线场景应用的制作方法及装置
CN103650458A (zh) 媒体流的传输方法、装置与系统
CN107770618A (zh) 一种图像处理方法、装置及存储介质
CN103312814B (zh) 云管理平台和虚拟机终端用户间vnc隐通道的建立方法
CN106127837A (zh) 网络漫画的多国语言支持系统
WO2013097799A1 (zh) 版式文件的处理方法和装置
CN107688529A (zh) 组件调试方法和装置
CN104615670A (zh) 一种android浏览器中支持多渲染引擎的方法及浏览器
CN105701165A (zh) 浏览器模式切换方法及切换装置
CN108228139B (zh) 基于html5浏览器框架的单片机开发系统及装置
CN104469078A (zh) 互动投影控制方法和系统
CN106293658B (zh) 一种界面组件生成方法及其设备
CN115904372A (zh) 数据处理方法及装置
CN105787043A (zh) 一种跨平台商业银行移动应用分发管理模式
CN107621955B (zh) 一种简易的web app的实现方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20141224

WD01 Invention patent application deemed withdrawn after publication