Manjaro Linux下配置Qt Android開發環境


Pre-Settings

安裝Qt,勾選上Android相關的包

下載相關kits

  • JDK

    $ yay jdk                                                           # 列出的選項中選擇一個jdk,參照官方文檔選擇openJDK
    $ archlinux-java status                                             # 查看系統默認的jdk
    $ sudo archlinux-java set [對應的jdk包名]                             # 若只有一個jdk,跳過這一步
    # 驗證
    $ java -version
    $ javac -version
    # 可以自己編寫一個java的HelloWorld來進一步驗證
    
  • SDK

    Qt5.14好像還是不支持最新的sdk,所以下的一個舊版的,在StackOverflow找到一個舊版鏈接

  • NDK

    同樣的,在Android Developer下載對應的NDK包

配置

  • JDK

    Qt Creator中:工具->選項->設備->Android

    JDK location中填入JDK的路徑,例如我的:/usr/lib/jvm/java-8-openjdk

  • Android settings:

    • Pre-settings:

      在主目錄下創建一個名為Android的文件夾(用來存儲SDK,NDK包) ,將之前下載好的SDK、NDK解壓后放入Android文件夾中

    • Settings:

      Qt Creator中:工具->選項->設備->Android

      在SDK、NDK路徑兩欄中分別填入對應包的路徑,例如我的:

      SDK:/home/jaywhen/Android/sdk
      NDK:/home/jaywhen/Android/ndk
      

      完成后會提示缺少一些依賴,依照提示安裝即可

遇到的問題

  • 新建Qt Quick項目后(使用Android kits),文件目錄樹上的文件除了.pro文件外全是灰色的,且編譯不通過


    這個問題困擾了我很久(太菜了),網上幾乎找便了也沒找到解決方案,后來經過對比官方實例程序才明白

    原因

    出現這個問題可能是.pro文件的配置有問題,寫入了不存在的模塊

    例如,在我的案例中,我的Android模塊庫中,並沒有virtualkeyboard這一模塊,而我在新建項目的時候點擊了Use Qt Virtual Keyboard這一選項(當然這一操作在你的模塊庫中有virtualkeyboard時是沒問題的),導致無法編譯。

    解決

    解決方法要么是安裝對應的模塊庫,要么如果自己寫的這個應用不需要用到虛擬鍵盤,那么在新建項目初期就不用勾選Use Qt Virtual Keyboard這一選項

  • Android deploy settings file not found, not building an APK.

    這個問題偶爾出現,可能是由於Qt for Android的配置文件不太穩定導致的

    原因

    不詳

    解決

    打開的項目中,依次選擇:項目->Build選中對應的編譯器,將Enable Qt Quick Compiler取消勾選,等重構后再次勾選上,即可編譯出apk

測試

參考

StackOverflow: How do I download the Android SDK without downloading Android Studio?

BiliBili: Qt開發android配置


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM