CN109614133A - 一种电力行业轻量级热发布移动应用的方法 - Google Patents
一种电力行业轻量级热发布移动应用的方法 Download PDFInfo
- Publication number
- CN109614133A CN109614133A CN201811508990.4A CN201811508990A CN109614133A CN 109614133 A CN109614133 A CN 109614133A CN 201811508990 A CN201811508990 A CN 201811508990A CN 109614133 A CN109614133 A CN 109614133A
- Authority
- CN
- China
- Prior art keywords
- client
- function
- mobile application
- publication
- artmethod
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
-
- 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/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种电力行业轻量级热发布移动应用的方法。移动应用客户端下载在本地的移动客户端占用内存小,本身没有复杂功能,当应用客户端使用时,通过获取服务器端插件来实现功能,使用时会从服务器获取插件来具备原生功能,实现动态加载功能、热发布新功能或修复缺陷。本发明客户端本身占用内存很小,缺陷修复和新功能发布都可以在服务器端更新,极大的提升了移动应用增加新功能和修复bug能力。
Description
技术领域
本发明属于电力行业移动应用的热发布领域,具体说是一种针对移动应用瘦身需求和和动态发布新功能的电力行业轻量级热发布移动应用方法。
背景技术
在电力系统移动互联环境高速发展的情况下,建设了大量移动APP,建设过程中不可避免的会存在一些隐藏的缺陷和BUG,但是由于信通本身检修制度限制,移动应用只能通过月度检修解决缺陷,无法快速进行版本迭代和应急处理,不能满足用户在不升级APP的情况进行缺陷修复或者新功能发布,同时大量移动应用占据了手机内存,也不能满足移动应用瘦身需求和和动态发布新功能的需求法。
发明内容
为了满足移动应用瘦身需求和和动态发布新功能的需求,本发明的目的是提供一种电力行业轻量级热发布移动应用的方法。移动应用客户端使用时会从服务器获取插件来具备原生功能,客户端本身占用内存很小,缺陷修复和新功能发布都可以在服务器端更新,极大的提升了移动应用增加新功能和修复bug能力。
本发明的目的通过以下技术方案实现:
一种电力行业轻量级热发布移动应用的方法,其特征在于具体内容如下:
1)轻量级客户端
下载在本地的移动客户端占用内存小,本身没有复杂功能,当应用客户端使用时,通过获取服务器端插件来实现功能。
2)动态加载功能
可以通过Android反射的方法Reflection,Reflection机制允许程序在正在执行过程中,利用Reflection APIs取得arr包,并将aar包动态加载到系统内存里,当应用使用时,这些包自带的插件使应用具备原生的功能。
3)热发布新功能或修复缺陷
由classLoader加载补丁类,在native层直接memcoy(smeth,dmth,sizeof(ArtMethod))替换整个artMethod结构,初始化时会分配空间,AllocArtMethodArray会紧挨着new出来放入art中的方法数组中,热发布新功能即初始化补丁类,修复缺陷时,用修复过的新ArtMethod去替换旧ArtMethod内容。客户所使用的功能都是动态下载的,客户端本身不需要更改。
本发明中,移动应用客户端使用时会从服务器获取插件来具备原生功能,客户端本身占用内存很小,缺陷修复和新功能发布都可以在服务器端更新,极大的提升了移动应用增加新功能和修复bug能力。
本发明满足了用户在不升级APP的情况进行缺陷修复或者新功能发布功能。
附图说明
图1 是本发明架构分层示意图。
具体实施方式
一种电力行业轻量级热发布移动应用的方法,移动应用客户端使用时会从服务器获取插件来具备原生功能,客户端本身占用内存很小,缺陷修复和新功能发布都可以在服务器端更新。具体如下:
客户端使用
1用户通过下载渠道下载移动应用客户端。
2用户查看客户端功能列表。
3点击后获取进度条,调用Reflection机制Reflection APIs取得arr包,并将aar包动态加载到系统内存里从服务器端获取插件,加载到客户端。
4插件加载完成后,应用具备原生的功能。
服务器端发布功能
1运维人员在服务器端新增classLoader加载补丁类,初始化补丁类时分配空间。
2ArtMethod初始化完成,发布新功能。
服务器端修复缺陷
1运维人员在服务器端修复缺陷时,用修复过的新ArtMethod去替换旧ArtMethod内容。
2ArtMethod替换完成,修复功能。
3用户从服务器端获取插件是修复完成后新插件,不用更新客户端。
Claims (4)
1.一种电力行业轻量级热发布移动应用的方法,其特征在于具体如下:
1)轻量级客户端
下载在本地的移动客户端占用内存小,本身没有复杂功能,当应用客户端使用时,通过获取服务器端插件来实现功能;
2) 动态加载功能
通过Android反射的方法Reflection,Reflection机制允许程序在正在执行过程中,利用Reflection APIs取得arr包,并将aar包动态加载到系统内存里,当应用使用时,这些包自带的插件使应用具备原生的功能;
3)热发布新功能或修复缺陷
由classLoader加载补丁类,在native层直接memcoy替换整个artMethod结构,初始化时分配空间,AllocArtMethodArray紧挨着new出来放入art中的方法数组中,热发布新功能即初始化补丁类,修复缺陷时,用修复过的新ArtMethod去替换旧ArtMethod内容;客户所使用的功能都是动态下载的,客户端本身不需要更改。
2.根据权利要求1所述的电力行业轻量级热发布移动应用的方法,其特征在于:客户端使用具体如下:
21)用户通过下载渠道下载移动应用客户端;
22)用户查看客户端功能列表;
23)点击后获取进度条,调用Reflection机制Reflection APIs取得arr包,并将aar包动态加载到系统内存里从服务器端获取插件,加载到客户端;
24)插件加载完成后,应用具备原生的功能。
3.根据权利要求1所述的电力行业轻量级热发布移动应用的方法,其特征在于:服务器端发布功能具体如下:
31)运维人员在服务器端新增classLoader加载补丁类,初始化补丁类时分配空间;
32)ArtMethod初始化完成,发布新功能。
4.根据权利要求1所述的电力行业轻量级热发布移动应用的方法,其特征在于:服务器端修复缺陷具体如下:
41)运维人员在服务器端修复缺陷时,用修复过的新ArtMethod去替换旧ArtMethod内容;
42)ArtMethod替换完成,修复功能;
43)用户从服务器端获取插件是修复完成后新插件,不用更新客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811508990.4A CN109614133A (zh) | 2018-12-11 | 2018-12-11 | 一种电力行业轻量级热发布移动应用的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811508990.4A CN109614133A (zh) | 2018-12-11 | 2018-12-11 | 一种电力行业轻量级热发布移动应用的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109614133A true CN109614133A (zh) | 2019-04-12 |
Family
ID=66008579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811508990.4A Pending CN109614133A (zh) | 2018-12-11 | 2018-12-11 | 一种电力行业轻量级热发布移动应用的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109614133A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103677877A (zh) * | 2012-09-12 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 一种本地广告软件开发包升级的方法及装置 |
CN104239082A (zh) * | 2013-06-20 | 2014-12-24 | 上海博达数据通信有限公司 | 嵌入式系统的热补丁实现方法 |
CN106897095A (zh) * | 2017-02-24 | 2017-06-27 | 网易(杭州)网络有限公司 | 应用程序热修复的方法、装置和可读存储介质 |
CN107025119A (zh) * | 2017-03-06 | 2017-08-08 | 山东大学 | 一种Android智能终端系统软件热修复的方法 |
CN108399080A (zh) * | 2018-03-05 | 2018-08-14 | 深圳市华讯方舟软件信息有限公司 | 一种Android App热更新方法 |
-
2018
- 2018-12-11 CN CN201811508990.4A patent/CN109614133A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103677877A (zh) * | 2012-09-12 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 一种本地广告软件开发包升级的方法及装置 |
CN104239082A (zh) * | 2013-06-20 | 2014-12-24 | 上海博达数据通信有限公司 | 嵌入式系统的热补丁实现方法 |
CN106897095A (zh) * | 2017-02-24 | 2017-06-27 | 网易(杭州)网络有限公司 | 应用程序热修复的方法、装置和可读存储介质 |
CN107025119A (zh) * | 2017-03-06 | 2017-08-08 | 山东大学 | 一种Android智能终端系统软件热修复的方法 |
CN108399080A (zh) * | 2018-03-05 | 2018-08-14 | 深圳市华讯方舟软件信息有限公司 | 一种Android App热更新方法 |
Non-Patent Citations (1)
Title |
---|
佚名: "《https://mobile.51cto.com/ahot-563190.htm》", 9 January 2018 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105487885B (zh) | 手游热更新方法 | |
US20140379656A1 (en) | System and Method for Maintaining a Cluster Setup | |
CN106055388A (zh) | 一种云平台应用自动部署框架 | |
US9262154B2 (en) | Enhanced upgrade path | |
CN105830017B (zh) | 零停机时间部署和回滚 | |
US8443084B2 (en) | Enhanced upgrade path | |
CN103309683B (zh) | 硬件设备的软件补丁嵌入方法及装置 | |
CN103177077B (zh) | 一种apk文件的存储及输出方法 | |
CN105376244A (zh) | 一种以基于云端服务器进行人工智能和物理仿真计算的网络游戏实现方法 | |
CN109002320A (zh) | 用于软件开发包的更新方法、系统、电子设备及存储介质 | |
CN109513213A (zh) | 一种手游分包下载技术方法 | |
CN105763626A (zh) | 适用于应用客户端支付的sdk初始化方法 | |
CN108921775B (zh) | 一种基于Unity的软件线性渲染的方法 | |
JP2012010182A (ja) | 情報処理装置と情報処理方法 | |
CN106020906A (zh) | 一种基于Cordova的客户端热更新方法 | |
CN102624875A (zh) | 一种对终端设备的语言包进行替换或更新的方法 | |
CN109614133A (zh) | 一种电力行业轻量级热发布移动应用的方法 | |
CN103455967A (zh) | 一种图片特效在线化处理方法 | |
CN105327508A (zh) | 网络游戏运行系统及方法 | |
CN103562865B (zh) | 用于重新编程可编程硬件设备的方法和系统 | |
CN105302602A (zh) | 一种云平台应用程序平滑在线升级方法 | |
CN107133042A (zh) | 一种基于IFML的iOS开发建模方法 | |
CN104142851A (zh) | 一种在安卓模拟器中使用电脑输入法的方法 | |
CN111208974A (zh) | 组件管理方法和装置 | |
CN106125578A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190412 |
|
RJ01 | Rejection of invention patent application after publication |