Windows下用QtCreator和C++写Android程序-上

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/isscollege/article/details/78411695

  作为一个C++程序员,很早就听说可以在android上用NDK写C++程序,由于时间原因,一直没有接触。最近抽空研究了一下,确实可以实现,但是总体感觉开发起来还是不那么方便。但是既然做了,就在此做个记录,便于自己和其他朋友需要的时候参考一下。
首先我是在Windows下,装了一个QtCreator4.1的IDE,由于最近带学生做Linux下的实训项目,用了Qt的库,感觉用着还比较顺手,所以就在Windows上又安装了Qt5.5的库。这些是基础环境,具体过程就不多说,网上有很多介绍。
既然做android开发,那么android的SDK是必不可少的。另外,为了支持android上的C++开发,谷歌特地推出了NDK的包,可以支持C++和java之间的通信。由于单独下载这两个包(android SDK和NDK)比较麻烦,所以专门下载了android studio的IDE用于获取这两个包,其实应该还有更好的方法,暂时没有时间调查。
由于在编译的步骤中,需要做C++和Java的混合编译,所以需要用到Gradle,这个会在工程的编译的流程中下载。
需要的包都准备好了,还有对QtCreator进行设置,这样在编译运行的时候才能找到这些包。
在菜单的“工具-选项-Android”中,打开下面的UI,设置对应内容:
这里写图片描述
基本的环境就这样搭建好了,下面就开始创建一个工程。首先新建文件或项目:
这里写图片描述
注意上面几个点就可以,项目类型选择Application->Qt Widgets Application,右上角的模板要选择Android设备 模板。在后续的步骤中,有两个地方注意一下:
这里写图片描述
这是第一个地方,也就是要选择编译的平台,我这里有3个支持的平台,这是我安装android的SDK的时候选择的,而且这个是在下面的配置中自动设置的:
这里写图片描述
如果没有自动检测到,说明安装SDK的时候没有安装完全,需要更新SDK。(我是在Android Studio中调用SDK Manager更新的,用的是SDK26的版本)
第二个注意的地方是选择QMainWindow,
这里写图片描述
下拉的内容里还有QWidget和QDialog,我没有选,不知道是否支持。另外要注意选择“创建界面”,这样便于后面的界面开发。
经过上面的步骤,一个基本的Qt工程基本创建完了,但是还不能支持android,还需要在工程中引入Android的内容用于build android APK。注意下面的几个地方:
这里写图片描述
如上图所示,在工程的项目设置中,在Build Android APK步骤中,首先选择要使用的SDK版本,我这里是26版本,然后要选择把Qt的库打包到APK中。虽然这样会造成APK比较大,但是如果要用Qt做界面,不打进去界面就不能出来。然后还要注意选中Gradle用于做混合编译和部署。最后,要选择”Create Templates”,把android的内容引入到工程中:
这里写图片描述
做完上面的步骤后,基本的项目配置完成了,但是在编译时还可能会出现问题,我遇到的基本是下面两个:
1、 刚才提到,在做编译部署时,需要用到Gradle。那么需要正确配置它对的版本。在gradle-wrapper.proper(这是在进行上面的步骤时自动创建的)中,需要配置一下,在编译时可能会下载。
2、 build.gradle文件的内容也要注意,这个文件也是在上面步骤中创建的,我还没弄明白它俩的关系,但是需要注意更新这两个文件中Gradle的版本。
到此为止,编译基本就可以通过了,关于具体工程的实现,下次内容再介绍。

Created by 陈祥俭
这里写图片描述

阅读更多
换一批

没有更多推荐了,返回首页