• 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配置

  • 相关阅读:
    返回一个整数数组中最大子数组的和
    简单四则运算
    简单四则运算2设计思路
    三月份阅读计划
    简单四则运算的随机输入
    软件工程读书笔记(10)——第十章 软件测试
    软件工程读书笔记(11)——第十一章 软件演化
    构建之法阅读笔记(一)
    敏捷开发方法综述
    第四周进度条
  • 原文地址:https://www.cnblogs.com/Jaywhen-xiang/p/12672449.html
Copyright © 2020-2023  润新知