CN110580146B - 一种基于eros的混合应用解决*** - Google Patents

一种基于eros的混合应用解决*** Download PDF

Info

Publication number
CN110580146B
CN110580146B CN201810578160.2A CN201810578160A CN110580146B CN 110580146 B CN110580146 B CN 110580146B CN 201810578160 A CN201810578160 A CN 201810578160A CN 110580146 B CN110580146 B CN 110580146B
Authority
CN
China
Prior art keywords
updating
scaffold
module
development
plug
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
Application number
CN201810578160.2A
Other languages
English (en)
Other versions
CN110580146A (zh
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.)
Beijing Yihe Spring Technology Co ltd
Original Assignee
Beijing Yihe Spring Technology 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 Beijing Yihe Spring Technology Co ltd filed Critical Beijing Yihe Spring Technology Co ltd
Priority to CN201810578160.2A priority Critical patent/CN110580146B/zh
Publication of CN110580146A publication Critical patent/CN110580146A/zh
Application granted granted Critical
Publication of CN110580146B publication Critical patent/CN110580146B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于eros的混合应用解决***,包括脚手架指令设计及其兼容模块、快速生成开发模板模块、插件与组件更新模块和云端信息增量发布更新模块;所述脚手架指令设计及其兼容模块通过脚手架暴露出来简洁的接口,让用户快速进行生成内置包,更新模板文件、sdk相关文件;所述快速生成开发模板模块通过脚手架指令从前端包管理平台自动拉取最新的模板,让用户随时随地进入开发状态;所述插件与组件更新模块包括前端插件更新、前端组件更新、客户端组件更新;所述云端信息增量发布更新模块通过eros‑cli触发增量信息发布和全量信息发布两个命令。其整个过程实现一套代码能动态的运行在不同平台,减少人力与时间投入,降低开发成本,提高开发效率。

Description

一种基于eros的混合应用解决***
技术领域
本发明涉及互联网技术领域,具体为一种基于eros的混合应用解决***。
背景技术
随着移动应用(APP)平台的多样化发展(Android、iOS、Windows等),应用开发商面临着提供多平台APP解决方案这一挑战,由此针对不同的平台开发对应的APP,以达到推广应用产品、扩大用户群的目的。
对于应用开发人员来说,不同平台需要不同的编程语言、开发环境,这对开发者提出了较高的专业技术要求,同时多种语言和环境的转换容易让人混淆,埋下bug隐患。另一方面,应用的维护和升级也比较困难。任何的维护和升级,都必须针对不同的平台开发对应的版本,增大了维护、升级的复杂度;此外,由于平台特性的关系,不同平台间的用户体验也很难做到一致。这样的开发需要许多不同的开发小组在不同的平台开发同一款APP,存在大量的重复劳动,极大的浪费了人力和时间。所以,目前急需要一种跨平台的混合应用解决方法,只做一次开发,编译生成不同平台的APP,减少重复劳动,大大加快开发进程。
目前,前端开发混合应用绝大部分都是基于react-native,react虽然为前端应用开发者打开了函数式编程的大门,但其让人晦涩难懂的语法也让很多新手开发望而却步。相比较而言,vue则以友好的api,更接近前端编程的方式、丰富的文档吸引了大量的开发者。与此同时,基于vue写法的weex的出现,也打开了vue和混合应用的桥梁。
Weex是一款轻量级的移动端跨平台动态性技术解决方案,无论是开发过程,还是打包、发布过程,都存在很多问题,例如:
(1)weex在初始化时,启动环境会遇到种种问题;
(2)项目工程化没有很好的解决方案;
(3)业务写法前端接受程度不高,编译环境需要二次配置;
(4)版本升级之后,当前应用扩展设计不足导致很难升级SDK;
(5)随着业务的发展需要对weex的modules和components进行扩展,前端人员的原生扩展能力有限,官方更新不够快;
(6)没有配套的增量升级的方案;
(7)没有成套的UI组件进行简易APP快速开发。
以上局限性导致了很多开发者不敢使用,weex因此也一直不温不火,因此不仅限制了vue和weex,同时也限制了绝大部分开发者
发明内容
本发明的目的在于提供一种基于eros的混合应用解决***,通过一次开发,编译生成不同平台的APP,减少重复劳动,大大加快开发进程,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种基于eros的混合应用解决***,包括脚手架指令设计及其兼容模块、快速生成开发模板模块、插件与组件更新模块和云端信息增量发布更新模块;
所述脚手架指令设计及其兼容模块通过脚手架暴露出来简洁的接口,并从开源仓库平台github将项目信息克隆clone到本地,让用户快速进行生成内置包,更新模板文件,更新sdk相关文件;
所述快速生成开发模板模块在备份到本地的项目文件中,对脚手架配置文件(eros.dev.js)与客户端配置文件(eros.dev.js)进行读取,进而通过脚手架指令从前端包管理平台自动拉取最新的模板,让用户随时随地进入开发状态;
所述插件与组件更新模块包括前端插件更新、前端组件更新、客户端组件更新;所述前端插件更新的实现,由本地开发生成插件集合,统一注入到客户端中,减少app增量发布包的大小,并通过脚手架指令来更新插件;所述前端组件更新的实现由本地开发组件库,通过脚手架更新命令(eros install)一键更新到开发者本地;所述客户端组件更新模块的实现,由客户端将所有依赖及其weex内置版本放置于公共平台,通过脚手架一键获取并升级;
所述云端信息增量发布更新模块通过eros-cli触发增量信息发布与全量信息发布两个命令,所述增量信息发布基于发布平台生成不同版本的差分包;所述全量信息发布用于先前信息包更改或受损情况。
优选的,包括一键启动服务,通过一键启动服务进行实时开发效果查看和debug调试。
优选的,包括增加扩展components和modules。
与现有技术相比,本发明的有益效果是:
1.本发明基于eros的混合应用解决***,能让开发者尽可能少的关心客户端,甚至不用关心客户端知识,让更多前端的开发者开发混合应用,并在此基础上快速迭代业务。
2.本发明基于eros的混合应用解决***,提供了插件、模块和组件的更新机制,用户一键更新,让用户完全不关心版本的迭代,只专注于业务,解决了以往weex开发的痛点,通过脚手架初始化出完整的项目工程目录,实现了bui和weex-ui的内嵌集成和更新。
3.本发明基于eros的混合应用解决***,一键启动服务进行实时开发效果查看和debug调试(vue、sass、babel的编译都支持)。
4.本发明基于eros的混合应用解决***,实时跟进最新的SDK,一键命令升级现有工程,使工程实时跟进官方weex版本。
5.本发明基于eros的混合应用解决***,快速响应开发者的需求,增加扩展components和modules,简易的调用方式,灵活的扩展业务。
6.本发明基于eros的混合应用解决***,提供了完整的差分包更新方案,快速发布上线业务及更新。
附图说明
图1为本发明的***设计示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例中:一种基于eros的混合应用解决***,包括脚手架指令设计及其兼容模块、快速生成开发模板模块、插件与组件更新模块和云端信息增量发布更新模块;
其中,脚手架指令设计及其兼容模块:通过脚手架暴露出来简洁的接口,从开源仓库平台github将eros-template等项目信息克隆clone并安装到本地,可让用户快速进行生成内置包,更新模板文件,更新sdk相关文件;
其中,快速生成开发模板模块:在备份到本地的项目文件中,对脚手架配置文件(eros.dev.js)与客户端配置文件(eros.dev.js)进行读取,进而通过脚手架指令从前端包管理平台自动拉取最新的模板,让用户随时随地进入开发状态;
其中,组件与插件更新机制:包括前端插件更新、前端组件更新、客户端组件更新;前端插件更新的实现,由本地开发生成插件集合,统一注入到客户端中,减少app增量发布包的大小,通过脚手架指令来更新插件;前端组件更新的实现由本地开发组件库,通过脚手架更新命令(eros install)一键更新到开发者本地;客户端组件更新模块的实现,由客户端将所有依赖及其weex内置版本放置于公共平台,通过脚手架一键获取并升级;
其中,远程云端信息发布更新模块:eros-cli可触发增量信息发布与全量信息发布两个命令,其中增量信息发布主要基于发布平台生成不同版本的差分包,客户端在每次进入的时候轮训是否进行新版本的升级,整个过程不需要重新下载应用,便于业务的快速开发和迭代;全量信息发布用于先前信息包更改或受损等特殊情况。
本发明通过JavaScript拓展了所有原生拓展的模块,并简化其调用接口方式,拓展了一套更新、打包、一键生成模板等机制,拓展模块包括:原生封装了请求,方便开发者在项目中与后端交互;原生拓展了事件机制,方便开发者在多个页面之间通过事件来解耦,也可以在前端和客户端之间来通信;原生拓展了摄像头相关操作,方便开发者掉起扫一扫等;原生拓展了图片支持,方便开发者上传图片,预览图片等;原生拓展获取当前地址位置;原生拓展修改应用字体大小;原生拓展修改应用导航条,拓展出来多项配置;原生拓展单选,多选模态框,吐丝提示等;原生拓展微信支付功能;原生拓展路由模块,提供跳转页面,携带参数等功能;原生拓展分享配置;原生拓展本地持久化存储功能;
其中,拓展组件包括:日期组件,方便开发者快速调用日期来完成业务功能;富文本组件;弹窗组件;下拉刷新组件;加载本地资源拓展等组件。
综上所述:本发明提供的一种基于eros的混合应用解决***,对weex进行了有益的扩展,让前端人员通过vue的语法和api来写出iOS/Android原生应用,实现一套代码能动态的运行在不同平台,将传统的应用开发人员解放出来,减少人力与时间投入,降低开发成本,提高开发效率。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

Claims (3)

1.一种基于eros的混合应用解决***,其特征在于,包括脚手架指令设计及其兼容模块、快速生成开发模板模块、插件与组件更新模块和云端信息增量发布更新模块;
所述脚手架指令设计及其兼容模块通过脚手架暴露出来简洁的接口,并从开源仓库平台github将项目信息克隆clone到本地,让用户快速进行生成内置包,更新模板文件,更新sdk相关文件;
所述快速生成开发模板模块在备份到本地的项目文件中,对脚手架配置文件(eros.dev.js)与客户端配置文件(eros.dev.js)进行读取,进而通过脚手架指令从前端包管理平台自动获取最新的模板,让用户随时随地进入开发状态;
所述插件与组件更新模块包括前端插件更新、前端组件更新、客户端组件更新;所述前端插件更新的实现,由本地开发生成插件集合,统一注入到客户端中,减少app增量发布包的大小,并通过脚手架指令来更新插件;所述前端组件更新的实现由本地开发组件库,通过脚手架更新命令(eros install)一键更新到开发者本地;所述客户端组件更新模块的实现,由客户端将所有依赖及其weex内置版本放置于公共平台,通过脚手架一键获取并升级;
所述云端信息增量发布更新模块通过eros-cli触发增量信息发布与全量信息发布两个命令,所述增量信息发布基于发布平台生成不同版本的差分包;所述全量信息发布用于先前信息包更改或受损情况。
2.如权利要求1所述的一种基于eros的混合应用解决***,其特征在于:包括一键启动服务,通过一键启动服务进行实时开发效果查看和debug调试。
3.如权利要求1所述的一种基于eros的混合应用解决***,其特征在于:包括增加扩展components和modules。
CN201810578160.2A 2018-06-07 2018-06-07 一种基于eros的混合应用解决*** Active CN110580146B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810578160.2A CN110580146B (zh) 2018-06-07 2018-06-07 一种基于eros的混合应用解决***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810578160.2A CN110580146B (zh) 2018-06-07 2018-06-07 一种基于eros的混合应用解决***

Publications (2)

Publication Number Publication Date
CN110580146A CN110580146A (zh) 2019-12-17
CN110580146B true CN110580146B (zh) 2023-05-23

Family

ID=68810169

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810578160.2A Active CN110580146B (zh) 2018-06-07 2018-06-07 一种基于eros的混合应用解决***

Country Status (1)

Country Link
CN (1) CN110580146B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113721912B (zh) * 2021-08-31 2022-09-16 浩鲸云计算科技股份有限公司 基于umi的微前端框架的动态分包和合包方法
CN114461205A (zh) * 2022-04-13 2022-05-10 杭州比智科技有限公司 数据可视化平台及适用于数据可视化平台的组件管理方法
CN115114174B (zh) * 2022-08-02 2022-12-13 中航信移动科技有限公司 一种用于weex页面的调试方法、存储介质及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104714830A (zh) * 2015-04-03 2015-06-17 普元信息技术股份有限公司 基于原生开发语言实现跨平台应用开发的***及方法
CN104991760A (zh) * 2014-12-23 2015-10-21 广州亦云信息技术有限公司 基于分布式模块化技术的PaaS平台服务管理***和实现方法
CN107577491A (zh) * 2017-08-09 2018-01-12 时趣互动(北京)科技有限公司 一种基于Weex的移动应用内版本更新的方法、***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104991760A (zh) * 2014-12-23 2015-10-21 广州亦云信息技术有限公司 基于分布式模块化技术的PaaS平台服务管理***和实现方法
CN104714830A (zh) * 2015-04-03 2015-06-17 普元信息技术股份有限公司 基于原生开发语言实现跨平台应用开发的***及方法
CN107577491A (zh) * 2017-08-09 2018-01-12 时趣互动(北京)科技有限公司 一种基于Weex的移动应用内版本更新的方法、***

Also Published As

Publication number Publication date
CN110580146A (zh) 2019-12-17

Similar Documents

Publication Publication Date Title
US7370318B1 (en) System and methodology for asynchronous code refactoring with symbol injection
CN112685035B (zh) 项目开发方法及装置、计算机可读存储介质、电子设备
CN110580146B (zh) 一种基于eros的混合应用解决***
CN106775744B (zh) 一种生成静态库的方法和装置
CN110531962B (zh) 小程序的开发处理方法、设备及计算机可读存储介质
CN104615462B (zh) 跨平台的移动应用生成服务端及***
CN111740948B (zh) 数据包发布方法、动态更新方法、装置、设备及介质
CN107577609B (zh) 一种基于主机端动态链接的嵌入式***动态模块调试***
CN102262684A (zh) 移动终端网页页面生成方法及装置
CN116069325B (zh) 前端项目构建方法、装置、设备及计算机可读存储介质
CN115525282A (zh) 跨平台桌面应用程序的实现方法及其相关设备
CN114968192A (zh) 一种项目创建方法、装置、计算机设备及存储介质
CN115291946A (zh) 鸿蒙***移植方法、装置、电子设备及可读介质
CN113703738A (zh) 前端开发方法、装置、设备及介质
CN115113850A (zh) 一种跨平台应用的构建、运行方法、服务器、终端和***
CN114840195B (zh) 一种针对iOS SDK静态库的私有化方法
CN114327498A (zh) 自动化部署方法、***、电子设备及计算机可读介质
CN113641351A (zh) 一种一键式脚手架完成前端基础功能搭建方法
CN109634647B (zh) 大型前端项目的构建方法及***
CN112650494A (zh) 用于开发智能合约的在线ide的搭建方法及装置
CN111880775A (zh) 多模块分层架构实现方法、装置、电子设备、存储介质
CN113805878B (zh) 插件工程化方法、装置、计算机***和介质
CN117093286B (zh) 插件生成方法、装置、设备及计算机可读存储介质
CN116991355B (zh) 修改和迭代脚本支持led驱动芯片的方法、***及装置
CN117591153A (zh) 一种ios动态装载js对象的方法及装置

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
GR01 Patent grant
GR01 Patent grant