Qt应用开发(安卓篇)——Linux下Qt15.5.2配置Android

news2025/2/25 3:19:40

目录

一、前言

二、Qt安装

三:JDK安装

四:安装SDK,NDK

五、其他事项

六、新建项目


一、前言

        看网上教程,多数是windows环境下的,配置也很简单,想不到自己配置的时候却遇到很多问题,传了一些资源文件和配置文件,如果不想在官网下载的,可以直接下载。

https://download.csdn.net/download/u014491932/88737711

        下面是环境配置的流程,前面三步安装都差不多,主要是后面构建的时候一直失败,令人头大,搞了好多天,全是踩坑经验。

二、Qt安装

        如果Qt未安装,官网下载https://download.qt.io/official_releases/online_installers/

        安卓开发套件必选,其他套件大家视情况选择。        

         如果已经下载过Qt,但是当初安装的时候没有选择安卓开发套件,只需要在安装路径下执行MaintenanceTool,最好是加上root权限执行。

三:JDK安装

        进入官网下载JDKhttps://www.oracle.com/java/technologies/downloads/

        拉到下面,选择1.8的版本,没注册的账号的同学这里需要注册,然后才能下载。

        下载完成之后,直接解压到安装目录下。

        编辑profile文件,末尾添加jdk路径到环境变量。

export JAVA_HOME=/home/xuguijun/jdk1.8.0_391
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

        source脚本让环境变量生效。

        查看jdk版本,出现如下结果即为配置成功。

四:安装SDK,NDK

        SDK和NDK就需要单独去下载了,打开QtCreator-工具-选项-设备-Android,选择JDK路径之后,选择Set Up SDK,这里要保证网络正常,后面就是不断的点击OK/YES和下一步就行了。

        安装完NDK、SDK、OpenSSL之后,选择Apply,点击OK关闭,再次打开环境界面,可以看到安卓的编译器,qmake已经自动都配好了,这时候就环境就基本配好了。

五、其他事项

        1、项目构建路径要简短或者直接取消勾选shadow build,否则会报错“Could not initialize class org.codehaus.groovy.runtime.InvokerHelper”

         2、Qt安装路径下,找到并修改sdk_definitions.json

        3、第一次构建项目不成功,出现“java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7”或者“Could not initialize class org.codehaus.groovy.runtime.InvokerHelper”

        需要在构建的目录下找到gradle.properties文件,修改其内容增加JDK路径,然后重新编译。

 

        生成成功截图:

六、新建项目

        新建项目流程和桌面项目一样,我们选择一个widget项目,开发套件选择配置号的安卓。

        设置一个简短的构建路径。

        修改主页文字。

        直接构建,然后第一次报错,修改gradle.properties文件后成功生成apk文件,第二次构建时间比较长,可能十几秒,第三次构建就只需要1s。

        apk文件7.5M,这个大小还是很客观的。

        apk拷贝到手机,安装,显示有点问题,无伤大雅。

        拷贝到开发板,一样可以运行,非常棒。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1391415.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何保证新加入的依赖版本与当前项目的其他相关依赖版本兼容?或者如何确保依赖版本升级后适合当前项目?或者如何保证新引入的依赖版本适合当前项目?

如何保证新加入的依赖版本与当前项目的其他相关依赖版本兼容?或者如何确保依赖版本升级后适合当前项目?或者如何保证新引入的依赖版本适合当前项目? 如题,可通过maven仓库找出各个版本之间的对应关系举例 如题,可通过m…

哈希(包含闭散列和开散列实现)

STL提供了两种关联式容器——树型和哈希关联式容器,本章就是关于哈希关联式容器的介绍。 unordered_map unordered_map介绍 unordered_map是一种储存键值对(key,value)的关联式容器,能够通过key快速索引到其对应的value容器中,key值用于唯…

系统性学习vue-vuex

系统性学习vue-vuex 理解vuexvuex工作原理搭建vuex环境案例Vuex的开发者工具使用getters配置项mapState与mapGettersmapActions和mapMutationsvuex模块化namespace 理解vuex 概念: 专门在Vue中实现集中式状态(数据)管理的一个Vue插件&#xf…

黄金t+d与黄金期货交易的区别

在金融投资领域中,黄金是一种重要的避险工具和财富保值增值手段。对于投资者来说,了解并熟悉不同的黄金交易方式是至关重要的。其中,黄金TD和黄金期货交易是两种常见的黄金交易形式。那么,它们之间具体有哪些区别呢? 了…

WebGL中开发VR(虚拟现实)应用

WebGL(Web Graphics Library)是一种用于在浏览器中渲染交互式3D和2D图形的JavaScript API。要在WebGL中开发VR(虚拟现实)应用程序,您可以遵循以下一般步骤,希望对大家有所帮助。北京木奇移动技术有限公司&a…

OpenJDK 和 OracleJDK 哪个jdk更好更稳定,正式项目用哪个呢?关注者

OpenJDK 和 OracleJDK:哪个JDK更好更稳定,正式项目应该使用哪个呢?我会从,从开源性质、更新和支持、功能差异等方面进行比较,如何选择,哪个jdk更好更稳定,正式项目用哪个呢,进行比较…

select子句简单查询

Oracle从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645 目录 数据查询 起别名 连接 ​编辑 去重 ​编辑 另外补充几个不常用的命令 如果要进行查询,那么需要使用数据操纵语言(Data Manipulation Language,DML&am…

yum仓库详解(命令+搭建)

目录 一、初步了解yum 1、yum简介 2、yum实现过程 二、yum配置文件及命令 1、 yum配置文件 1.1 主配置文件 1.2 仓库设置文件 1.3 日志文件 2、yum命令详解 三、搭建仓库的方法 1、搭建本地yum仓库 2、搭建阿里云仓库(http方式外网环境) 3、f…

搜索经典题——填充 9*9矩阵

题目:给定一个九行九列矩阵,填充矩阵元素,要求: 1、每一行每一列,每个小九宫格(图片画粗的地方就是)不能包含相同元素 2、每一行,每一列,每个小九宫格均会完整出现1-9的数…

pycharm学生认证免费使用专业版

进入pycharm官网Monthly and yearly plans with JetBrains Toolboxhttps://www.jetbrains.com/store/?fromMenu#discounts ​​​ 按照要求填写,但是如果遇到这个提示,恭喜你,你的学校获得了美国商务部认证。 ​ 遇到这个不要慌&#…

Spring Boot - Application Events 的发布顺序_ApplicationStartingEvent

文章目录 概述Code源码分析 概述 Spring Boot 的广播机制是基于观察者模式实现的,它允许在 Spring 应用程序中发布和监听事件。这种机制的主要目的是为了实现解耦,使得应用程序中的不同组件可以独立地改变和复用逻辑,而无需直接进行通信。 …

残差网络 ResNet

目录 1.1 ResNet 2.代码实现 1.1 ResNet 如上图函数的大小代表函数的复杂程度,星星代表最优解,可见加了更多层之后的预测比小模型的预测离真实最优解更远了, ResNet做的事情就是使得模型加深一定会使效果变好而不是变差。 2.代码实现 impo…

java版微信小程序商城 免 费 搭 建 java版直播商城平台规划及常见的营销模式有哪些?电商源码/小程序/三级分销

涉及平台 平台管理、商家端(PC端、手机端)、买家平台(H5/公众号、小程序、APP端(IOS/Android)、微服务平台(业务服务) 2. 核心架构 Spring Cloud、Spring Boot、Mybatis、Redis …

用通俗易懂的方式讲解:使用 LlamaIndex 和 Eleasticsearch 进行大模型 RAG 检索增强生成

检索增强生成(Retrieval-Augmented Generation,RAG)是一种结合了检索(Retrieval)和生成(Generation)的技术,它有效地解决了大语言模型(LLM)的一些问题&#x…

车载音频EMI的产生及典型音频功放AW836XX的解决方案

之前针对 eCall的文章中有提到D类音频功放需要关注EMI问题(点击文章回看《车载eCall系统音频应用解决方案》),在此展开此问题并寻求解决方案。 1. EMI定义与分类 电磁干扰(Electromagnetic Interference,EMI&#xff…

企业为什么要选择软件定制开发?

引言:定制开发的兴起 在商业竞争日益激烈的今天,企业领导者们面临着一个重要的抉择:是选择通用软件解决方案,还是探寻更贴合企业需求的定制开发路径? 在企业决策软件解决方案时,通用软件和软件定制开发各…

IOS-高德地图连续定位-Swift

使用定位功能需要需要接入高德地图定位Api: pod AMapLocation配置Info 在info中新建一个名为Privacy - Location Temporary Usage Description Dictionary的字典,然后在这个字典下新建Privacy - Location When In Use Usage Description、Privacy - Lo…

应用案例 | Softing工业物联网连接解决方案助力汽车零部件供应商实现智能制造升级

随着业务的扩展和技术的进步,某国际先进汽车零部件供应商在其工业物联网的升级方案中使用了Softing的dataFEED OPC Suite——通过MQTT协议将现场控制器和数控系统的数据上传到其物联网云平台,从而实现了设备状态的远程监控,不仅能够提前发现设…

drools开源规则引擎介绍以及在Centos上的具体部署方案,让你的业务规则能够独立于应用程序本身

Drools是一个基于Java的开源规则引擎,用于处理业务规则和复杂事件处理。它提供了一个声明性的规则语言,允许开发人员定义业务规则,并通过引擎执行这些规则。以下是Drools规则引擎的简介和一些应用场景描述。 Drools规则引擎简介 规则引擎概述…

消费增值模式:引领消费者与平台共创双赢的新篇章

在数字化时代,消费模式正在发生深刻变革。消费者不再满足于单纯的购物行为,而是寻求更加个性化和有价值的消费体验。而平台也面临着如何吸引和留住消费者的挑战。消费增值模式作为一种新型的商业模式,正逐渐成为解决这一问题的关键。 消费增…