Qt 5.2 发布了,支持 Android 平台,太好了。
之前公司项目,为了移植一个依赖 Qt 的程序到安卓平台上,我自己交叉编译了 Qt Embedded 4.5.2,费了老大劲儿,还修改了源码(只把 QtCore、QtNetwork、QtXml、QtNetwork 编译过了)。现在终于有官方版本了。
今天试验了一下,在 Windows 7 下把开发环境搭建完成,跑了一个 helloAndroid 示例。
环境搭建其实很简单,首先下载Qt 5.2.0 for Android(Windows 32-bit),安装,注意选中 Tools 里面的 MinGW。安装完成后打开 Qt Creator(版本是 3.0.0 ),打开“帮助”菜单,选择“索引”子菜单,输入 Android,选择“Getting Started with Qt for Android”,里面有详细的步骤,指导我们完成接下来的操作。下图是 Qt Creator里的帮助:
我使用的 ndk 版本是 r8d ,到 这里(点我)下载,zip包,解压即可。
apache ant 是1.8.4,到官网(点我)下载,zip包,解压即可。
jdk 是 6,到 oracle 官网(点我)下载,安装包,跟着向导安装即可。
Android SDK 安装参考:《Qt on Android: Android SDK安装》。
安装完成后需要设置一些环境变量:
- JAVA_HOME,我的是C:\Program Files (x86)\Java\jdk1.6.0_18
- CLASSPATH,内容.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\toos.jar
- 修改 Path 环境变量,添加%JAVA_HOME%\bin
接下来需要在 Qt Creator 中针对 Android 做一些设置,打开“工具”菜单下的“选项”子菜单。下图是我的设置:
loc
其中 JDK location 是 Qt Creator 通过 JAVA_HOME 自己找到的。
看上面的图片中有 AVD 设备,是我自己创建的,通过 Qt Creator 可以启动 Android AVD 管理器,创建自己想要的虚拟设备。
完成了这些,就可以开始构建示例程序了。
新建项目,选择 Qt Widget Application。向导会让选择平台,如下图:
我选择了 Andorid for armeabi-v7a ,接下来就很简单了,编码,构建,运行,选择目标设备。
程序运行结果截图:
针对一个项目,可以做一些设置,有构建的,有运行的,和其它版本 Qt Creator 类似,不同的是有一些 Android 相关的设置,比方说签名、SDK 版本、Qt 库的部署方式等,如下图所示:
我连接上我的手机 XT882 ,运行时也可以找到设备,选择手机,启动比虚拟机快多了,OK ,GOOD。建议直接在真机上调试。
好了,尝鲜到此为止。进一步的开发可以参考 Qt 的文档。
美中不足的是,如果选择 Bundle Qt libraries in APK ,那么 APK 就会变得比较大,我的示例程序 APK 有 6MB,部署到模拟器后通过设置查看,20MB。 Qt 提供了其它两种部署方式,可以弥补这一缺点。除此之外,还有另一个途径,自己编译 Qt 源码,通过裁减来缩小 Qt 库的体积,参考Qt 5 For Android Building。
翻译了大神BogDan Vatra的几篇关于 Qt on Android 的文章(原出处 http://www.kdab.com/category/blogs/),列出来参考一下:
我的关于 Qt on Android 的系列文章:
分享到:
相关推荐
windows下Qt5.2程序依赖的常用dll,包括MySQL插件、platform、网络等. release版本。 把生成的exe放入文件夹里就能运行。
Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qtdesigner5.2Qt...
Android平台Qt开发入门教程.pdf
这是Qt for Android的测试工程,主要测试QT的触摸手势事件
Qt 5.15.2基于Android 开发环境搭建,包含Qt5.15.2的在线安装与配置,包含JDK 1.8 Android Studio 4.1.3 Openssl 插件的安装配置以及其资源包下载路径,亲测可用,非常详细。汪采纳!
Qt for Android简单示例
Qt for android 动态权限申请工具类
在ubuntu下安装配置QT5.1 FOR ANDROID
Qt5.2帮助文件(.qch) 用于自行编译Qt无文档的情况,在QtCreator中添加即可
Windows下使用Qt开发Android程序.docxWindows下使用Qt开发Android程序.docx
QT for Android下多个 Service的创建启动,包括Service通过Jni外调QT信号槽实现,对研究QT在安卓下的跨平台开发很有帮助
QT15.1下载和安装指南,JDK、SDK等Android开发所需软件资源的下载和安装指导;详细说明在配置QT15.1的Android开发环境时遇到的特殊问题及解决办法。
QT FOR ANDROID 配置
qt for android 更新APP, 可以实现在app里更新自己 实现更新。
使用Qt for android调用原生系统的摄像头来录取设备,稳定高效,使用于安卓7.0版本及以上,测试在魅族5.0会后台死掉,但是录像会成功
供Qt使用的Android 版本openssl库, 添加到Qt Android工程的Additional Libraries即可,Android 7.0版本NDK去掉openssl支持的解决方法。
使用Qt for Android 和 QML开发的短信程序,使用JNI的方式在Qt端调用JAVA、以及JAVA端回调Qt端的方式。
Qt for Android 配置详细 (Windows下的),参考之用
基于Qt5.2的文件类型查看器,c++源码,对学习Qt的朋友有帮助
由于java包的依赖,废了我相当长时间去解决,所以资源分相对高点,但学习的价值很高,对于搞qt开发安卓的是一个晋级性的demo,详情细见我的博客http://blog.csdn.net/clinuxf/article/details/78720374