CN105260196B - 一种Android系统支持QT APP的实现方法 - Google Patents
一种Android系统支持QT APP的实现方法 Download PDFInfo
- Publication number
- CN105260196B CN105260196B CN201510843825.4A CN201510843825A CN105260196B CN 105260196 B CN105260196 B CN 105260196B CN 201510843825 A CN201510843825 A CN 201510843825A CN 105260196 B CN105260196 B CN 105260196B
- Authority
- CN
- China
- Prior art keywords
- android
- img
- ministro
- download
- userdata
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种Android系统支持QT APP的实现方法,所述实现方法首先使Ministro服务能作为Android系统的系统应用程序运行,其次将QT程序依赖的QT库以及其他文件部署到Android系统中,不需通过Ministro服务联网下载,从而使应用程序直接运行。本发明通过修改Android镜像的方式使Android系统支持QT APP,不需用户联网下载相关QT库等文件,不需通过Ministro服务联网下载,从而使应用程序直接运行,具有一定的安全性。
Description
技术领域
本发明涉及计算机Android系统技术领域,具体涉及一种Android系统支持QT APP的实现方法。
背景技术
QT for Android是一个实现Android平台支持QT开发的项目。一个 QT forAndroid 应用程序包含两个大的部分:
(1)原生部分,包含一个或多个动态库文件(.so),实际上就是Qt 应用程序。如果选择捆绑 Qt 库,那么也包含所有需要的库文件;
(2)Android 相关部分。其中Android相关部分包括: 1)Android manifest,安卓程序的入口点,最基本的配置文件; 2)两个Java类,加载依赖项和应用; 3)Ministroservice .aidl 文件,用于和 Ministro service 通信的; 4)相关资源文件。
QT开发的Android应用在Android平台运行需要QT库。QT库有三种部署方式:
(1)Use Ministro service to install QT;
(2)Bundle QT libs in APK;
(3)Deploy local QT libs to temporary directory 。
其中第2种方式会把所需的一切都打包装进apk里面,所以apk较大,第3种方式仅供测试使用。
Ministro服务是一个QT的共享库安装程序/服务提供者的服务,它是应用程序和QT库之间的桥梁。Ministro的工作原理:应用程序启动时首先搜索Ministro服务,如果Ministro服务未安装则提示安装,安装后应用程序会连接Ministro服务并告知其需要的QTmodules, Ministro会从网上下载相关QT库,最终应用程序启动,如果相关的QT库在本地存在则不需从网上下载,如图1所示。
Android源码编译后得到system.img、ramdisk.img、userdata.img映像文件。其中,ramdisk.img是emulator的文件系统,system.img包括了主要的包、库等文件,userdata.img包括了一些用户数据。
发明内容
本发明要解决的技术问题是:本发明提供一种Android系统支持QT APP的实现方法,通过修改Android镜像的方式使Android系统支持QT APP,不需用户联网下载相关QT库等文件。
本发明所采用的技术方案为:
一种Android系统支持QT APP的实现方法,所述实现方法首先使Ministro服务能作为Android系统的系统应用程序运行,其次将QT程序依赖的QT库以及其他文件部署到Android系统中,不需通过Ministro服务联网下载,从而使应用程序直接运行,具有一定的安全性。
所述实现方法步骤如下:
1)首先下载Ministro服务的APK程序,其次使用wget命令从QT官网下载相应平台的QT库以及其他文件;
2)将Android源码编译出来的system.img与userdata.img两个镜像解压,文件解压后,将Ministro服务的APK文件放入system.img,使其能够作为系统应用运行;将下载的QT库及其他相关文件放入userdata.img的对应目录里;
3)修改完成后重新压缩生成镜像文件:make_ext4fs –s –l 512M system.img /mnt/system, make_ext4fs –s –l 512M system.img /mnt/userdata;
4)将修改后的镜像刷入手机:fastboot flash system system.img,fastbootflash userdata userdata.img;
5)重启系统,将QT for Android程序拷贝到手机SD卡并安装,打开程序可以直接运行,不会提示下载Ministro服务与QT modules,避免用户联网进行操作。
步骤1)中下载相关程序时,注意QT版本、Android API与手机处理器类型。
本发明的有益效果为:
本发明通过修改Android镜像的方式使Android系统支持QT APP,不需用户联网下载相关QT库等文件,不需通过Ministro服务联网下载,从而使应用程序直接运行,具有一定的安全性。
附图说明
图1为Ministro工作原理图;
图2为实现Android系统支持QT APP的流程图。
具体实施方式
下面参照附图所示,通过具体实施方式对本发明进一步说明:
实施例1:
一种Android系统支持QT APP的实现方法,所述实现方法首先使Ministro服务能作为Android系统的系统应用程序运行,其次将QT程序依赖的QT库以及其他文件部署到Android系统中,不需通过Ministro服务联网下载,从而使应用程序直接运行,具有一定的安全性。
实施例2:
如图2所示,在实施例1的基础上,本实施例所述实现方法步骤如下:
1)首先下载Ministro服务的APK程序,其次使用wget命令从QT官网下载相应平台的QT库以及其他文件。
2)将Android源码编译出来的system.img与userdata.img两个镜像解压,文件解压后,将Ministro服务的APK文件放入system.img,使其能够作为系统应用运行;将下载的QT库及其他相关文件放入userdata.img的对应目录里;
3)修改完成后重新压缩生成镜像文件:make_ext4fs –s –l 512M system.img /mnt/system, make_ext4fs –s –l 512M system.img /mnt/userdata;
4)将修改后的镜像刷入手机:fastboot flash system system.img,fastbootflash userdata userdata.img;
5)重启系统,将QT for Android程序拷贝到手机SD卡并安装,打开程序可以直接运行,不会提示下载Ministro服务与QT modules,避免用户联网进行操作。
实施例3:
在实施例2的基础上,本实施例步骤1)中下载相关程序时,注意QT版本、AndroidAPI与手机处理器类型。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (2)
1.一种Android系统支持QT APP的实现方法,其特征在于:所述实现方法首先使Ministro服务能作为Android系统的系统应用程序运行,其次将QT程序依赖的QT库以及其他文件部署到Android系统中,不需通过Ministro服务联网下载,从而使应用程序直接运行;所述实现方法步骤如下:
1)首先下载Ministro服务的APK程序,其次使用wget命令从QT官网下载相应平台的QT库以及其他文件;
2)将Android源码编译出来的system.img与userdata.img两个镜像解压,文件解压后,将Ministro服务的APK文件放入system.img,使其能够作为系统应用运行;将下载的QT库及其他相关文件放入userdata.img的对应目录里;
3)修改完成后重新压缩生成镜像文件:make_ext4fs –s –l 512M system.img /mnt/system, make_ext4fs –s –l 512M system.img /mnt/userdata;
4)将修改后的镜像刷入手机:fastboot flash system system.img,fastboot flashuserdata userdata.img;
5)重启系统,将QT for Android程序拷贝到手机SD卡并安装,打开程序可以直接运行,不会提示下载Ministro服务与QT module。
2.根据权利要求1所述的一种Android系统支持QT APP的实现方法,其特征在于:步骤1)中下载相关程序时,应注意QT版本、Android API与手机处理器类型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510843825.4A CN105260196B (zh) | 2015-11-27 | 2015-11-27 | 一种Android系统支持QT APP的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510843825.4A CN105260196B (zh) | 2015-11-27 | 2015-11-27 | 一种Android系统支持QT APP的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105260196A CN105260196A (zh) | 2016-01-20 |
CN105260196B true CN105260196B (zh) | 2018-08-07 |
Family
ID=55099900
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510843825.4A Active CN105260196B (zh) | 2015-11-27 | 2015-11-27 | 一种Android系统支持QT APP的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105260196B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2589658A (en) * | 2019-11-29 | 2021-06-09 | Baidu online network technology beijing co ltd | Method and apparatus for running an applet |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107203524A (zh) * | 2016-03-16 | 2017-09-26 | 阿里巴巴集团控股有限公司 | 一种打包APK文件的方法、加载Bundle文件的方法及系统 |
CN109032604B (zh) * | 2018-07-03 | 2022-02-22 | 瑞芯微电子股份有限公司 | 一种可运行在Android系统上的Qt库的生成方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103985284A (zh) * | 2014-05-26 | 2014-08-13 | 四川川大智胜软件股份有限公司 | 一种基于Qt的跨平台教员控制台系统及其控制方法 |
CN104361089A (zh) * | 2014-11-17 | 2015-02-18 | 哈尔滨理工大学 | 基于Qt的跨平台文献管理系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI520069B (zh) * | 2010-08-11 | 2016-02-01 | 緯創資通股份有限公司 | 整合運用基於同一系統核心之異質作業系統之方法 |
-
2015
- 2015-11-27 CN CN201510843825.4A patent/CN105260196B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103985284A (zh) * | 2014-05-26 | 2014-08-13 | 四川川大智胜软件股份有限公司 | 一种基于Qt的跨平台教员控制台系统及其控制方法 |
CN104361089A (zh) * | 2014-11-17 | 2015-02-18 | 哈尔滨理工大学 | 基于Qt的跨平台文献管理系统 |
Non-Patent Citations (1)
Title |
---|
Android平台EPUB电子书阅读器的设计与实现;张杰;《中国优秀硕士学位论文全文数据库 信息科技辑》;20131215(第12期);全文 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2589658A (en) * | 2019-11-29 | 2021-06-09 | Baidu online network technology beijing co ltd | Method and apparatus for running an applet |
Also Published As
Publication number | Publication date |
---|---|
CN105260196A (zh) | 2016-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10795652B2 (en) | Generating native code from intermediate language code for an application | |
US20130167136A1 (en) | Component-based installation | |
CN104156243A (zh) | 一种应用分发和快速加载运行的系统及方法 | |
CN107943486B (zh) | 一种多语言代码编译方法、分发方法、装置和系统 | |
US7669201B2 (en) | System and method for common file installation | |
RU2638727C2 (ru) | Метод и устройство запуска внешнего приложения в браузере | |
US8510728B2 (en) | Dynamic determination of application server runtime classloading | |
US9823915B1 (en) | Software container format | |
CN110187910B (zh) | 一种热更新方法、装置、设备及计算机可读存储介质 | |
CN111309451A (zh) | 一种实现Docker镜像交叉编译的方法 | |
CN105260196B (zh) | 一种Android系统支持QT APP的实现方法 | |
CN103353844A (zh) | 一种软件开发工具包升级方法和系统 | |
CN107357607B (zh) | 文件数据的读取方法及装置 | |
CN106610839A (zh) | 发布升级包的方法、轻量升级方法、装置及系统 | |
CN103713902A (zh) | 一种基于Android系统的BOA编译方法和系统 | |
Falcone et al. | Weave droid: aspect-oriented programming on android devices: fully embedded or in the cloud | |
CN103019764B (zh) | Andriod资源包可安装性的检测方法及系统 | |
CN106339237A (zh) | 针对JavaEE领域WEB应用的插件加载框架及方法 | |
CN108762800A (zh) | 应用程序的动态更新方法和装置 | |
CN103176809A (zh) | 应用升级方法及系统 | |
CN104317573A (zh) | 安卓安装包转换方法和装置以及运行应用的方法和装置 | |
CN101169726A (zh) | 基于MTD分区的嵌入式Linux系统在线升级方法 | |
CN104915288A (zh) | 测试方法及装置 | |
CN103942051B (zh) | 基于paas平台的应用部署方法和装置 | |
CN104965719B (zh) | 应用安装文件生成方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |