前言
自己是從事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