[Android] Qt安卓教程(1): 從Qt5.1開始

2puT發表於2016-07-31

系列教程傳送門:
第二篇:http://bbs.qter.org/forum.php?mod=viewthread&tid=563
第三篇:http://bbs.qter.org/forum.php?mod=viewthread&tid=918
第四篇:http://bbs.qter.org/forum.php?mod=viewthread&tid=1382
第五篇:http://bbs.qter.org/forum.php?mod=viewthread&tid=1664
第六篇:http://bbs.qter.org/forum.php?mod=viewthread&tid=2518

本系列教程主要講述與安卓移植版Qt的相關內容,如平臺特性、功能限制、特定使用者體驗和內容釋出等,其餘與Qt自身非平臺相關的內容不會作詳細講述,筆者預設童鞋們已經有一定的Qt功底。
另:請自備安卓機子一臺,不推薦用模擬器。

第一篇:從Qt5.1開始

1. 準備工作
    站長yafei已經發過這個準備教程了,我這裡只簡單說明一下要點。(筆者使用的是Kubuntu 12.04,其它系統可能會有少許差異,有問題歡迎提問)

    1.1 下載好android sdk和ndk,解壓即可;
    1.2 下載好Qt5.1並安裝;
    1.3 (注意!這個必須)下載安裝最新Qt Creator,版本2.8或以上;(過時)
          (更新)新版本的Qt整合安裝包已經包含了版本大於2.8的creator
    1.4 下載並配置好jdk和ant;
    1.5 (Linux版請注意)android sdk自帶的adb可能沒有連線裝置的許可權,請把這個adb改為root屬主,用chmod u+s特殊授權,再增加普通使用者訪問許可權(777),這個步驟看不懂的童鞋請拿著Linux教程面壁去;

2. 開始動手

    啟動creator,注意必須是版本大於等於2.8的,目前Qt5.1自帶的是2.7.2。


    開啟creator後,先不要急著建專案,去選項看看Android相關配置有沒有問題,我這裡先貼上我自己的Linux版本配置:
    

    然後確定編譯器、Qt版本和編譯打包套件的配置: (至少要有一個arm v7的套件在)




    確定無誤後可以開始新建專案了,我這裡只選了arm v7 gcc 4.8的,x86可忽略(市面上幾乎沒有x86的手機賣,當然現在x86的電腦也可以裝安卓了)

    建好專案後,這裡暫時不改原始碼,直接去“專案”選項卡

    然後點“執行”(專案裡面的,不是左下角的)


    開啟第二項“包配置”


    選擇安卓目標sdk,這裡的sdk就是指安卓的sdk版本(必須大於等於10,這是Qt5的基本要求),圖中的“android-10”就代表android 2.3,這個需要在android的sdk裡面自行安裝

    點左下角的錘子進行編譯

    然後就可以選擇圖中的“從應用程式讀取資訊”,這個是必須步驟,這個步驟可以自動在apk中載入需要用到的Qt庫

    簽名什麼的暫時不需要,如果是自己玩的話

    開啟第三項“Deploy配置”,這裡童鞋們可以開啟版本低於2.8的creator,會發現這裡有很大的不同,特別是最下方的“Bundle Qt libraries in APK”,這個是把Qt庫打包進APK的選項,老的creator沒有這個功能,這就是為什麼我要求下載最新版本的creator了
    

    接下來請連上手機,記得開啟手機的debug模式,點選左下角的綠色三角形,程式就在手機上執行了,如圖,hello world
    

    把編譯好的apk拿出來,就可以直接給小夥伴們安裝了,不需要別的支援,讓他們驚呆一下吧。

3. 加工一下

   開啟main.qml這個檔案,在第六行下面加一行,輸入 id:hello ,
   然後把下面onclicked裡面的內容改為 hello.text = parent.width + " , " + parent.height
   意思就是把hello world改為當前程式的佔用解析度


   執行效果如下
  


   說明了Qt for Android已經自帶有解析度自適應的能力,因為程式碼頭部寫的大小是360×360,而實際顯示是程式實際佔用的解析度。



能力有限請多多包涵,歡迎各種沒節操的批評。

BTW,目前還沒打算下一期寫什麼內容,童鞋們可以提個建議。

該文章原創於Qter開源社群(www.qter.org),作者Joey_Chan,轉載請註明出處!

相關文章