CN109189411B - 一种云应用安装方法 - Google Patents
一种云应用安装方法 Download PDFInfo
- Publication number
- CN109189411B CN109189411B CN201810968945.0A CN201810968945A CN109189411B CN 109189411 B CN109189411 B CN 109189411B CN 201810968945 A CN201810968945 A CN 201810968945A CN 109189411 B CN109189411 B CN 109189411B
- Authority
- CN
- China
- Prior art keywords
- application
- program
- artificial intelligence
- cloud
- demand
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种云应用安装方法,包括如下步骤:预测步骤、匹配步骤、启动步骤、运行步骤:初始化沙盒,使得沙盒为上层应用提供隔离的运行环境;通过动态编译在目标安装包中插桩,以实现所述需求程序的免安装应用。本发明,通过技术创新突破原有Android系统限制,无需特权的情况下新增、修改、删除软件功能,实现安卓应用免安装目的,具有智能预加载、卸载、空间智能管理功能。
Description
技术领域
本发明涉及系统开发技术领域,具体为一种云应用安装方法。
背景技术
Android目前作为市面上广受好评的智能设备操作系统,因其免费的特性受到众多终端消费者以及硬件制造厂商的喜爱;但是在实际使用中却有一些痛点,尤其是运营商作为特殊的渠道分发商有其特殊的需求;目前市面的解决方案均需要具备特殊权限,或要求具有系统签名或要求具备Root权限,而且不具有智能预加载、卸载、空间智能管理,同时,现有技术中的云应用方案,不支持JavaME、HTML5、PSP多运行环境功能,因此,设计一种云应用安装方法是很有必要的。
发明内容
本发明的目的在于提供一种云应用安装方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
一种云应用安装方法,包括如下步骤:
预测步骤:通过人工智能模块预测用户需求并获得需求预测表。在用户未使用时,通过数据与人工智能分析,预测用户最有可能使用的功能。
匹配步骤:所述人工智能模块将所述需求预测表与云端程序进行匹配获得需求程序,所述人工智能模块下载所述需求程序,并使用预设算法压缩所述需求程序体积。预测用户最可能使用的应用后,匹配云端的程序,并使用专属算法压缩体积,避免对其他应用产生影响;
启动步骤:用户向所述人工智能模块发出目标应用,所述人工智能模块检查所述目标应用是否在所述需求预测表中;如果所述目标应用在所述需求预测表中,则解压并启动所述需求程序。检查用户的目标应用是否在云端程序的预测列表中,如果在目标应用在云端程序的程序列表中,则直接调用云端程序。
运行步骤:初始化沙盒,使得沙盒为上层应用提供隔离的运行环境;通过动态编译在目标安装包中插桩,以实现所述需求程序的免安装应用。
其中在上述的运行步骤中,初始化沙盒,使得沙盒为上层应用提供隔离的运行环境以替代Android操作系统,在程序应用开发时,为未来可能会用到的功能、存储预留位置,以便于在日后使用时,无需再次申请,通过动态编译在目标APK中插桩,以实现免安装应用,通过自定义ART(Andriod RunTime)/Dalvik(用于Android平台的虚拟机)中类加载器(ClassLoader),实现Android的应用层,以重定向资源请求,提供在标准Android环境之上构建运行环境,以供其运行,从而将目标应用启动。
进一步地,所述启动步骤与所述运行步骤之间,还包括一执行步骤:如果所述目标应用不在所述需求预测表中,则所述人工智能模块将用户请求的所述目标应用与所述云端程序进行匹配获得需求程序,所述人工智能模块下载所述需求程序,并使用预设算法压缩所述需求程序体积;
所述人工智能模块解压并启动所述需求程序。
进一步地,所述安装包为安卓系统安装包;
通过自定义安卓系统安装包中类加载器,实现安卓系统的应用层,以重定向资源请求,提供在标准安卓系统环境之上构建运行环境,以供其运行,从而将目标应用启动。
进一步地,在所述执行步骤中:所述人工智能模块下载所述需求程序后,同时检测用户出的所述目标应用是否安全且符合法律法规;
若是,完成后续步骤;
若否,所述人工智能模块暂停所述执行步骤并删除所述需求程序。
出于监管要求,检测用户请求的目标应用,确认目标应用应是安全无毒且符合法律法规的内容,同时,一旦发现云端程序存在违规内容,第一时间处理;
根据上述技术方案,所述沙盒是一种限制应用访问设备系统和敏感数据的隔离机制,且处于保护下的数据只能通过权限操作。
根据上述技术方案,所述ClassLoader(类加载器)为一种Java(计算机编程语言)运行环境中的加载器,且Java中所有的内容都需要通过ClassLoader来获取。
根据上述技术方案,所述步骤五中,运行环境为Android环境之上构建JavaME、HTML5、PSP(Play Station Portable,多功能掌机系列)、FC(红白机Family Computer)、PS1/2(Personal System)多运行环境。其中,JavaME又称为J2ME(Java Platform,MicroEdition),是为机顶盒、移动电话和PDA之类嵌入式消费电子设备提供的Java语言平台,包括虚拟机和一系列标准化的Java API。
与现有技术相比,本发明的有益效果是:
1.通过动态编译在目标安卓安装包(APK,AndroidPackage)中插桩,通过自定义ART/Dalvik中ClassLoader,以重定向资源请求,不要求任何额外的特权,只需要具备普通应用程序的权限,无需特权的情况下新增、修改、删除软件功能,实现安卓应用免安装目的;
2.可以根据终端用户的网络情况、磁盘存储率,应用使用率等,以及大数据分析得出最优方案,尽可能提升用户加载、启动速度以及磁盘占用率之间平衡,具有智能预加载、卸载、空间智能管理功能;
3.通过基于沙盒技术,实现应用隔离运行环境,同时在沙盒的基础上提供仿真的目标运行环境,集成标准Android(安卓系统)、HTML(超文本标记语言)5、JavaME、PSP、FC、PS1/2多运行环境,可在标准Android环境下,用户获得一致的体验。
附图说明
图1是本发明的云应用安装流程图;
图2是本发明的云应用结构示意图;
图3是本发明的沙盒的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1-3,本发明提供一种技术方案:一种云应用安装方法,包括如下步骤:步骤一(预测步骤),AI预测用户需求;步骤二(匹配步骤),匹配云端程序;步骤三(启动步骤),用户请求;步骤四(执行步骤),应用安全检测;步骤五(运行步骤),启动应用;
其中在上述的步骤一中,在用户未使用时,通过数据与人工智能分析,预测用户最有可能使用的功能;
其中在上述的步骤二中,预测用户最可能使用的应用后,匹配云端的程序,并使用专属算法压缩体积,避免对其他应用产生影响;
其中在上述的步骤三中,检查用户的目标应用是否在云端程序的预测列表中,如果在目标应用在云端程序的程序列表中,则直接调用云端程序;
其中在上述的步骤四中,出于监管要求,检测用户请求的目标应用,确认目标应用应是安全无毒且符合法律法规的内容,同时,一旦发现云端程序存在违规内容,第一时间处理;
其中在上述的步骤五中,初始化沙盒,使得沙盒为上层应用提供隔离的运行环境以替代Android操作系统,在程序应用开发时,为未来可能会用到的功能、存储预留位置,以便于在日后使用时,无需再次申请,通过动态编译在目标APK中插桩,以实现免安装应用,通过自定义ART/Dalvik中ClassLoader,实现Android的应用层,以重定向资源请求,提供在标准Android环境之上构建运行环境,以供其运行,从而将目标应用启动。
根据上述技术方案,在步骤二中,专属算法为一种基于HBase(分布式的、面向列的开源数据库)架构的算法,能够有效压缩应用体积,减少数据占用空间。
根据上述技术方案,沙盒是一种限制应用访问设备系统和敏感数据的隔离机制,且处于保护下的数据只能通过权限操作,隐私性好,安全性高。
根据上述技术方案,ClassLoader为一种Java运行环境中的加载器,且Java中所有的内容都需要通过ClassLoader来获取。
根据上述技术方案,在步骤五中,运行环境为Android环境之上构建JavaME、HTML5、PSP、FC、PS1/2多运行环境。
基于上述,本发明的优点在于,本发明在用户未使用时,通过数据与人工智能分析,预测用户最有可能使用的功能;预测用户最可能使用的应用后,匹配云端的程序,并使用专属算法压缩体积,避免对其他应用产生影响,专属算法为一种基于HBase架构的算法,能够有效压缩应用体积,减少数据占用空间;检查用户的目标应用是否在云端程序的预测列表中,如果在目标应用在云端程序的程序列表中,则直接调用云端程序;出于监管要求,检测用户请求的目标应用,确认目标应用应是安全无毒且符合法律法规的内容,同时,一旦发现云端程序存在违规内容,第一时间处理;初始化沙盒,沙盒是一种限制应用访问设备系统和敏感数据的隔离机制,且处于保护下的数据只能通过权限操作,隐私性好,安全性高,使得沙盒为上层应用提供隔离的运行环境以替代Android操作系统,在程序应用开发时,为未来可能会用到的功能、存储预留位置,以便于在日后使用时,通过动态编译在目标APK中插桩,无需再次申请,以实现免安装应用,通过自定义ART/Dalvik中ClassLoader,ClassLoader为一种Java运行环境中的加载器,且Java中所有的内容都需要通过ClassLoader来获取,实现Android的应用层,以重定向资源请求,提供在标准Android环境之上构建JavaME、HTML5、PSP、FC、PS1/2多运行环境以供其运行,从而将目标应用启动;本发明通过渗透应用的ClassLoader、预留插桩的方法,以达到在不需要安装新应用的情况下新增、修改、删除原有应用的功能,同时通过修改ClassLoader以达到资源重定向的目的,最终获得类似新装应用的体验,但是完全无需修改目标应用;因为侵入点只有ClassLoader,因此本发明足够稳定,且不依赖于Android任何未公开的方法,在底层系统发生升级,不影响本发明的实施,具有足够的可靠性;基于人工智能分析,可以通过预加载、热启动,空间智能管理能辅助手段进一步提升用户体验,同时,本发明,在沙盒技术基础上提供创新,为每个应用提供可选的仿真环境,以便于可以同时支持包括JavaME、HTML5、PSP、FC、PS1/2在内的多种环境。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (6)
1.一种云应用安装方法,其特征在于:包括如下步骤:
预测步骤:通过人工智能模块预测用户需求并获得需求预测表;
匹配步骤:所述人工智能模块将所述需求预测表与云端程序进行匹配获得需求程序,所述人工智能模块下载所述需求程序,并使用预设算法压缩所述需求程序体积;
启动步骤:用户向所述人工智能模块发出目标应用,所述人工智能模块检查所述目标应用是否在所述需求预测表中;
如果所述目标应用在所述需求预测表中,则解压并启动所述需求程序;
运行步骤:初始化沙盒,使得沙盒为上层应用提供隔离的运行环境;通过动态编译在目标安装包中插桩,以实现所述需求程序的免安装应用。
2.根据权利要求1所述的云应用安装方法,其特征在于:
所述启动步骤与所述运行步骤之间,还包括一执行步骤:如果所述目标应用不在所述需求预测表中,则所述人工智能模块将用户请求的所述目标应用与所述云端程序进行匹配获得需求程序,所述人工智能模块下载所述需求程序,并使用预设算法压缩所述需求程序体积;
所述人工智能模块解压并启动所述需求程序。
3.根据权利要求1所述的云应用安装方法,其特征在于:
所述安装包为安卓系统安装包;
通过自定义安卓系统安装包中类加载器,实现安卓系统的应用层,以重定向资源请求,提供在标准安卓系统环境之上构建运行环境,以供其运行,从而将目标应用启动。
4.根据权利要求2所述的云应用安装方法,其特征在于:
在所述执行步骤中:所述人工智能模块下载所述需求程序后,同时检测用户出的所述目标应用是否安全且符合法律法规;
若是,完成后续步骤;
若否,所述人工智能模块暂停所述执行步骤并删除所述需求程序。
5.根据权利要求1所述的云应用安装方法,其特征在于:所述需求程序基于类加载器实现资源隔离,且除类加载器外,与其他程序无其他任何连接点。
6.根据权利要求1所述的云应用安装方法,其特征在于:所述沙盒是一种限制应用访问设备系统和敏感数据的隔离机制,且处于保护下的数据只能通过权限操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810968945.0A CN109189411B (zh) | 2018-08-23 | 2018-08-23 | 一种云应用安装方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810968945.0A CN109189411B (zh) | 2018-08-23 | 2018-08-23 | 一种云应用安装方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109189411A CN109189411A (zh) | 2019-01-11 |
CN109189411B true CN109189411B (zh) | 2022-02-01 |
Family
ID=64919327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810968945.0A Active CN109189411B (zh) | 2018-08-23 | 2018-08-23 | 一种云应用安装方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109189411B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112783384A (zh) * | 2019-11-08 | 2021-05-11 | 荣耀终端有限公司 | 一种云应用运行的控制方法及电子设备 |
CN111046435B (zh) * | 2019-12-20 | 2022-05-10 | 山东广电信通网络运营有限公司 | 一种录像内容的保护方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102279960A (zh) * | 2010-06-12 | 2011-12-14 | 上海丫丫信息科技有限公司 | 一种包含用户元素的广告发布控制方法以及系统 |
CN103744652A (zh) * | 2013-12-19 | 2014-04-23 | 深圳市迈桥科技有限公司 | 一种跨移动终端的混合app开发方法及装置 |
CN104375861A (zh) * | 2014-11-04 | 2015-02-25 | 北京奇虎科技有限公司 | 基于安卓平台的应用程序免安装运行的方法、装置及终端 |
CN105183642A (zh) * | 2015-08-18 | 2015-12-23 | 中国人民解放军信息工程大学 | 基于插桩的程序行为获取及结构分析方法 |
CN105933425A (zh) * | 2016-05-18 | 2016-09-07 | 北京奇虎科技有限公司 | 推荐应用的方法及装置 |
CN106708580A (zh) * | 2016-12-27 | 2017-05-24 | 北京奇虎科技有限公司 | 应用程序免安装运行的方法、系统及智能终端 |
CN106775793A (zh) * | 2015-11-23 | 2017-05-31 | 卓望数码技术(深圳)有限公司 | 一种安卓应用免安装启动的方法、装置及终端 |
CN107832062A (zh) * | 2017-09-08 | 2018-03-23 | 上海壹账通金融科技有限公司 | 一种程序更新方法及终端设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7130862B2 (en) * | 2003-08-15 | 2006-10-31 | International Business Machines Corporation | Methods, systems and computer program prodcuts for validation of XML instance documents using Java classloaders |
-
2018
- 2018-08-23 CN CN201810968945.0A patent/CN109189411B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102279960A (zh) * | 2010-06-12 | 2011-12-14 | 上海丫丫信息科技有限公司 | 一种包含用户元素的广告发布控制方法以及系统 |
CN103744652A (zh) * | 2013-12-19 | 2014-04-23 | 深圳市迈桥科技有限公司 | 一种跨移动终端的混合app开发方法及装置 |
CN104375861A (zh) * | 2014-11-04 | 2015-02-25 | 北京奇虎科技有限公司 | 基于安卓平台的应用程序免安装运行的方法、装置及终端 |
CN105183642A (zh) * | 2015-08-18 | 2015-12-23 | 中国人民解放军信息工程大学 | 基于插桩的程序行为获取及结构分析方法 |
CN106775793A (zh) * | 2015-11-23 | 2017-05-31 | 卓望数码技术(深圳)有限公司 | 一种安卓应用免安装启动的方法、装置及终端 |
CN105933425A (zh) * | 2016-05-18 | 2016-09-07 | 北京奇虎科技有限公司 | 推荐应用的方法及装置 |
CN106708580A (zh) * | 2016-12-27 | 2017-05-24 | 北京奇虎科技有限公司 | 应用程序免安装运行的方法、系统及智能终端 |
CN107832062A (zh) * | 2017-09-08 | 2018-03-23 | 上海壹账通金融科技有限公司 | 一种程序更新方法及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109189411A (zh) | 2019-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10104123B2 (en) | Fetching a policy definition library from a policy server at mobile device runtime of an application package to control access to mobile device resources | |
CN105427096B (zh) | 支付安全沙箱实现方法及系统与应用程序监控方法及系统 | |
KR101238572B1 (ko) | 신뢰 환경을 지원하기 위한 컴퓨터 판독가능 구성요소의자동 업데이트 | |
US8943550B2 (en) | File system access for one or more sandboxed applications | |
US20150332043A1 (en) | Application analysis system for electronic devices | |
KR100883699B1 (ko) | 무선 장치 동작 환경에서 비검증된 프로그램들의 실행 | |
KR20160147862A (ko) | 확장자가 애플리케이션의 기능을 다른 애플리케이션으로 확장하게 하는 고정적 확장 포인트 | |
KR101453742B1 (ko) | 웹 어플리케이션 실행을 위한 보안 제공 장치 및 방법 | |
KR101557211B1 (ko) | 소프트웨어 애플리케이션 전달 및 개시 시스템 | |
US7770202B2 (en) | Cross assembly call interception | |
CN111191226A (zh) | 利用提权漏洞的程序的确定方法、装置、设备及存储介质 | |
CN105843653A (zh) | 一种安全应用配置方法及装置 | |
CN111782416A (zh) | 数据上报方法、装置、系统、终端及计算机可读存储介质 | |
CN109189411B (zh) | 一种云应用安装方法 | |
KR101482150B1 (ko) | 웹 어플리케이션 실행 장치 및 그의 웹 어플리케이션 관리 방법 | |
CN101548284A (zh) | 软件许可证中的条件策略 | |
Alfalqi et al. | Android platform malware analysis | |
CN108289080B (zh) | 一种访问文件系统的方法、装置和系统 | |
CN112966257B (zh) | 一种应用程序的授权方法及装置 | |
US10459851B2 (en) | Method and apparatus for executing a process on a device using memory privileges | |
CN105760164B (zh) | 一种用户空间文件系统中acl权限的实现方法 | |
CN115760391A (zh) | 区块链中智能合约更改方法、装置、电子设备及存储介质 | |
Nikale et al. | Comparative analysis of Android application dissection and analysis tools for identifying malware attributes | |
CN114372255A (zh) | 一种基于应用软件指纹的身份认证方法及设备 | |
CN113282363A (zh) | 一种优化混合app的方法及装置 |
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 |