Qt Quick 构建 Android app
前言
自己是从事Qt上位机开发的,最近,由于公司项目做得差不多了,闲不住哦,忙里偷闲看一下官方示例吧,发现自己目前做的界面真实low爆了,瞬受光速打击有木有!?谁让自己还是初入社会,遭受毒打的小菜鸟呢,认命咯。但是还是忍不住要试一试,也许对自己还有一点点的提升吧。然后就在尝试使用 Qt 的 qt quick 构建Android app,踩的坑真不少,最后还是成功了。倍感欣喜,感激涕零,呜呜呜呜~
正文
首先,这里配置软件的话,要注意版本问题,不像Android Studio,只要更新到最新版本,其内置的环境配置会自动帮我们配置好,就算有些小问题,也可以通过科学的上网找到解决方案。但是Qt本身不是专门为开发Android app而产生的,因此,其配置也相对简单些,但是有些包的配置版本问题并没有Android Stutio强大(毕竟人家是专业的,手动滑稽),在我为 QT 环境配置Android NDK时,便体现了这种问题,从官网下载的最新版本 android-ndk-r21-windows-x86_64.zip 配置 Qt5.12.2 时,便会莫名其妙出现 can't find -lc++ ,在使用旧版本的NDK时便不会出现这种问题,也许是官方还没解决这个问题,要么是国内还没或者很少有这方面的资源。
这里先提供一下官方文档的教程,有兴趣可以先看一下https://doc.qt.io/qt-5/android-building.html
一、软件版本和测试环境
ˇ 操作系统:Windows 10 - 64 位操作系统
ˇ Qt creater:Qt5.12.2
二、Android 开发工具包
我们按照自己的电脑配置选择安装包就ok,我个人选择的是64位版本的进行下载。
ˇ JDK:jdk-8u241-windows-x64.exe
这里我们直接选择最新版本的下载即可
ˇ Android sdk:android-sdk_r24.4.1-windows.zip
ˇ Android ndk: android-ndk-r19c-windows-x86_64.zip
有兴趣的看官也可以选择其它版本的NDK进行尝试一哈,实在没那么多流量咯。
ˇ JDK是 Java 语言的软件开发工具包,是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。这里只了解一下。
ˇ Android SDK 指的是Android专属的软件开发工具包。
ˇ Android NDK 是一个工具集,实现了 C 和 C++ 等语言以原生代码实现应用的各个部分。对于特定类型的应用,可以帮助我们重复使用以这些语言编写的代码库。
三、环境变量配置和相关下载
ˇ jdk 配置:
变量名:JAVA_HOME 变量值:F:\jdk\java (自己放置的绝对路径) 变量名:CLASSPATH 变量值:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tool.jar path: %JAVA_HOME%\bin %CLASSPATH%
ˇ Android SDK:
在我们下载好 sdk 的压缩包后,解压后,如下图所示
直接双击运行SDK Manger.exe即可,其实这里只需要选择几个用得到勾选就OK,也不需要换国内镜像,正常情况下可以下载,不行再换镜像也ok,按照如下顺序勾选下载。
1、
2、
3、
4、
上面的配置根据个人需要进行配置,如需国内镜像,自行度娘,最后点击install即可。下载完后其目录结构如下:
之后对其进行环境变量的配置
1 变量名:ANDROID_HOME 2 变量值:E:\Android\Sdk\android-sdk-windows 3 4 path: 5 %ANDROID_HOME%\platform-tools 6 %ANDROID_HOME%\tools
ˇ Android NDK:
直接解压ndk压缩包即可,其结构目录如下:
到这里Android的相关系统文件配置就完成了,接下来就配置Qt5.12.2的开发环境。
四、Qt Quick工程构建
1、
这里简单提一下Qt安装的组件,Android组件可以全部选择,勾选MinGW 相关版本。
Android x86
Android ARM64-v8a
Android ARMv7
其它的根据需要勾选。
等待安装完成...... 在安装完成后,我们需要进行一些选项配置。
将之前配置好的文件路径添加。Setting OK就表示配置成功。
最后显示如上图,则表示成功,离我们的目标也越来越近,身心也越来越疲惫。点击OK。
2、工程构建
接下来进行一个Hello Qt 示例。
2.1
在后面正常进行选择就ok
点击完成。接下来编写main.qml的代码,
1 import QtQuick 2.9 2 import QtQuick.Window 2.2 3 4 Window { 5 visible: true 6 width: 640 7 height: 480 8 title: qsTr("Hello World") 9 10 Text { 11 id: content 12 text: qsTr("Hello Qt") 13 anchors.centerIn: parent 14 } 15 16 MouseArea { 17 anchors.fill: parent 18 onClicked: { 19 Qt.quit(); 20 } 21 } 22 }
编写完成后,进行项目的配置。
在构建步骤中进行配置,如下图:
其中在第二步Keystore的创建,就是为应用创建一个App签名,不同的App拥有不同的Keystore,按照
提示创建就ok,其中要记住自己设置的密码和包的全名,设置的简单点就ok,如下图:
创建AndroidManifest.xml文件
点击Create Templates,创建该文件,如下图:
按照提示配置。
在箭头所指的Add下拉框中选择如图的Android App运行权限,保存即可。
在XML Source文件中可以进行界面布局。
Application name即应用名称,该界面的其它功能可以度娘。最后,构建项目运行,手机通过连接数据线
进行安装应用,传输模式选择文件传输,开启开发者选项即可。
码字真的要老命 zzzzzz