QT for andriod

QT for andriod 开发 apk软件,因为一些特殊的原因,在这里简单的记录一哈自己开发apk的流程和心得。

首先说明我采用的环境有哪些?

1、QT的版本,个人建议5.15.2的版本及以上,我是用的5.15.2。

2、andriod studio 可以帮助我们快速配置ndk等相关文件。

3、安装jdk相关文件,这是使用java的基础,而java是写apk软件的核心。

4、用于PC端的手机模拟器,我采用的模拟器是网易下面的MuMu模拟器(大家也可以采用其他的模拟器,使用方法应该都是大体上一致的)

那么我们接下来将一一介绍安装和说明,以及编译的时候有哪些注意事项。

首先安装jdk文件,我这里安装的是jdk11的样子,具体的安装包下载地址,我就放到链接里面了,有需要的可以自取(取件码:mate)。

安装jdk,是否安装成功可以在cmd命令行里面使用下面这个指令,查看自己的jdk是否安装成功

jdk -version

要注意安装的时候,要配置一哈环境变量

QT for andriod_第1张图片

其中java_home是你安装jdk的文件目录的路径。

第二步,就来到了安装ndk的步骤,大家可以自己采用全程自己手动安装相关依赖,也可以直接用andriod studio的方式(取件码:nmnm),谷歌的这个软件,可以帮助我们去配置软件环境,因此我在这里图方便就安装这个软件来配置ndk文件了。

DK(Java Development Kit)是用于Java开发和运行的环境。它包括了Java的开发工具和JRE(Java Runtime Environment)。在程序员的电脑上,安装JDK是必要的,因为它提供了编译和运行Java程序所需的工具和库。

NDK(Native Development Kit)是用于在Android平台上开发本地应用程序的一套工具。它允许开发者使用C和C++等本地语言编写Android应用程序,同时还提供了访问Android系统底层功能和库的接口。NDK的存在使得开发者可以更好地优化性能,提高应用程序的响应速度。在Unity中使用NDK可以加速游戏或应用程序的部分功能。

我配置的相关环境如下:

QT for andriod_第2张图片

QT for andriod_第3张图片

其中android SDK Platform-Tools一定要勾选,不然没办法使用adb功能连接模拟器

第三步,就来到了安装MuMu模拟器,这里我放一个链接,大家自行去下载,免费的软件。

MuMu模拟器官网_安卓12模拟器_网易手游模拟器 (163.com)

下载完以后,按照相关步骤配置你想要的模拟机型。

这里我选华为手机,花粉一个实锤了,哈哈(*^▽^*)!!!

QT for andriod_第4张图片

然后我们就可以打开QT了,选择工具-》外部-》配置-》设备-》android-》点开详情

QT for andriod_第5张图片

注意全绿,才可以正常使用,哪里红了就处理它,这个为安卓工具链自动创建套件,要勾选上,因为这样,qt才会为你自动下载openssl相关的工具。

包含以下模块:

  • Qt Core:这是QT库的主要部分,包括一切的核心功能,比如信号和槽机制,事件处理,容器类,正则表达式等。
  • Qt GUI:提供了图形渲染和用户界面的构建等功能,包括Qt Widgets和Qt QML两种方式。其中Qt QML是用于构建动态和流畅的用户界面的。
  • Qt Network:提供了各种网络通信功能,比如HTTP,FTP,SMTP等协议支持,以及套接字编程接口等。
  • Qt SQL:提供了对数据库访问的支持。
  • Qt Test:提供了单元测试框架和一些测试工具。
  • Qt WebAssembly:将Qt应用编译为WebAssembly格式,可以在Web浏览器中运行。
  • Qt Widgets:提供了基于C++的图形用户界面库,用于构建传统的桌面应用程序。

需要注意的是,对于具体某个模块是否支持Android平台,最好查看官方文档或者在相应的开源社区进行咨询。因为每个模块的开源社区都会有各自的移植和优化工作,所以只有官方或者社区才能提供最准确的信息。

官方的链接在下面:

Qt for Android Automotive

last but not least,就在用QT编译apk程序的时候,要注意只能使用QT支持的模块,才能用C++的代码去实现你想要实现的功能,不然会报错。另外apk的安装还需要包签名,不然有可能安装错误。

这个签名是可以自己创建设立的哈。

除了用我上面提到的mumu模拟器,还可以使用android里面的create device创建一个虚拟的device,这里我个人建议最好创建一个API大于9.0的。。。经验的教训,不如就会像我下面这样报错:

QT for andriod_第6张图片

例子:

QT for andriod_第7张图片

最后成功的效果图就是这样的啦,我这里是一个简易的network android的apk程序

你可能感兴趣的:(qt,c++,java,android,studio)