Qt5.2 for Android 配置及部署到手机运行
使用DNK编程也没有那么难,使用QT为安卓跨平台编程需要安装NDK,SDK通过NDK调用C++程序,偶尔能提高一些效率。
SDK下载地址:http://developer.android.com/sdk/index.html#download
原始链接:http://blog.csdn.net/syrchina/article/details/17335945 已修改大量原文。
原始链接:http://blog.csdn.net/aminfo/article/details/7814304
NDK概述
NDK全称:Native Development Kit。
1、NDK是一系列工具的集合。
* NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。这些工具对开发者的帮助是巨大的。
* NDK集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,开发人员只需要简单修改mk文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建出so。
* NDK可以自动地将so和Java应用一起打包,极大地减轻了开发人员的打包工作。
2、NDK提供了一份稳定、功能有限的API头文件声明。
Google明确声明该API是稳定的,在后续所有版本中都稳定支持当前发布的API。从该版本的NDK中看出,这些API支持的功能非常有限,包含有:C标准库(libc)、标准数学库(libm)、压缩库(libz)、Log库(liblog)。
NDK带来什么
1、NDK的发布,使“Java+C”的开发方式终于转正,成为官方支持的开发方式。
使用NDK,我们可以将要求高性能的应用逻辑使用C开发,从而提高应用程序的执行效率。使用NDK,我们可以将需要保密的应用逻辑使用C开发。毕竟,Java包都是可以反编译的。NDK促使专业so组件商的出现。(乐观猜想,要视乎Android用户的数量)
2、NDK将是Android平台支持C开发的开端。
NDK提供了的开发工具集合,使开发人员可以便捷地开发、发布C组件。同时,Google承诺在NDK后续版本中提高“可调式”能力,即提供远程的gdb工具,使我们可以便捷地调试C源码。在支持Android平台C开发,我们能感觉到Google花费了很大精力,我们有理由憧憬“C组件支持”只是Google Android平台上C开发的开端。毕竟,C程序员仍然是码农阵营中的绝对主力,将这部分人排除在Android应用开发之外,显然是不利于Android平台繁荣昌盛的。
软件准备:
1.QT5.2 for android (windows)版。
下载地址:https://qt-project.org/downloads
找到
看清是windows 32位哦!别下错了。
2.Java Platform (JDK) 7u45
下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-
downloads-1880260.html
按照下图所示步骤,找到jdk-7u45-windows-i586.exe下载。
下完安装。
安装会让你选择安装路径,希望使用默认的。安装完成你会发现在安装目录里有个2个文件夹。注意我的安装目录为默认的c:\program files\java
接下来设置环境变量:我的电脑-系统属性-高级,中找到“环境变量”点击新建即可。注意变量值都是以分号为间隔的。
我们新建系统变量ClassPath,填入C:\Program Files\Java\jdk1.7.0_45\bin
然后点确定。
同样方法再建立一个JAVA_HOME,值为C:\Program Files\Java\jdk1.7.0_45
然后确定。
再找到Path环境变量,加入qt的安装路径。如果这个变量值中有其他的值,要在我们添加的路径前加个英文态分号哦!;D:\Qt\Qt5.2.0\5.2.0\mingw48_32\bin。如果没有别的值就不要加;了。我把qt
for android版的qt安装在了D盘。
然后确定。
3.
adt-bundle-windows-x86-20131030(安卓JDK)
下载地址:http://developer.android.com/sdk/index.html#download
找到下图所示的标志,点击,接着会弹出一个页面,你点击同意后,选择32位的下载即可。
下载完成后是个压缩包,你需要解压。
我解压到了F盘,自己建立的android文件夹中了。你也可以跟我学,也在f盘建立一个android文件夹。这样你就可以完全复制我的变量值了。
F:\android\adt-bundle-windows-x86-20131030\sdk\tools填入PATH环境变量中。主要在路径前加个英文的分号哦。
如下图
接着找到SDK Manager。exe运行。打开后,它会自动检查更新,时间不短。趁这段时间,你可以加 Qt中国群218967017,闲聊下哦。也是不错的选择。大概2分钟左右吧
然后还是这个软件界面,你会发现有几个包可以安装。具体几个我也记不起了。目前我这是显示一个。接着你点安装按钮。
(再此,安装Tools、Paltform、和相应的安卓版本)
然后会弹出一个界面点接受Aceept,然后点击安装install
接着没有更新了,关闭即可。
4.android-ndk-r9b-windows-x86
下载地址:http://developer.android.com/tools/sdk/ndk/index.html
找到32位下图所示的位置下载。
下载解压。我还是在F盘的android文件夹里哦。
新建androidNDKHOST环境变量
值为F:\android\android-ndk-r9b-windows-x86\android-ndk-r9b
5.apache-ant-1.9.2-bin
下载地址http://ant.apache.org/bindownload.cgi
找到下图的位置下载
终于搞定了。接下来就是Creator的部分了
打开android 版 QT
选择浏览进行路径的配置。然后点击启动Android AVD管理器。添加一个虚拟手机即可。接着等待一会会在列表中显示了。我列表中显示的是名称1. 看看你的列表旁的添加按钮能不能用,如果能用,你直接点添加给个设备名字也行。
然后建立个android的项目。我建立的是QUICK项目建立过程中会让你选一个环镜。按下图来。
接着就是运行了。点调试按钮。如果环境你选的不对,就会出现运行错误。在模拟器界面中找到你的项目名,图标为小安卓机器人。
下图所示的我的项目名为untitled4
点击它运行运行结果。
这是在电脑上运行。如何在手机上呢。
请找到你的项目调试目录
build-untitled2-Android_for_armeabi_v7a_GCC_4_8_Qt_5_2_0-Debug下的android-build下的bin文件夹中就有apk包。
将此apk复制到手机中,然后点击安装即可在手机上运行。效果如下
最后一句,只剩一句:Q T中国群218967017 欢迎加入。
360云盘文件共享群:QT中国共享群,
打开邀请链接:http://qun.yunpan.360.cn/12187698
输入邀请码:2458
Qt5.2 for Android 配置及部署到手机运行的更多相关文章
- 【Android Studio安装部署系列】目录
概述 从刚开始使用Android Studio到现在,下面所有目录下的操作,当时习惯性的把每一个整理成一个文档(其实就是简单文字描述+截图):有些地方当时是一知半解,现在会稍微明白一些.正好赶上现在有 ...
- 【Android Studio安装部署系列】二十一、Android studio将项目上传到github中
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 两个相关概念:git和github Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理.Git ...
- 【Android Studio安装部署系列】二十五、Android studio使用NDK生成so文件和arr文件
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 Android Studio使用ndk的简单步骤. NDK环境搭建 下载NDK 下载链接:https://developer.and ...
- 【Android Studio安装部署系列】三十六、从Android Studio3.1.4升级到Android studio3.2【以及创建android p模拟器(未成功)】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 因为想要使用Android P模拟器,所以需要将Android Studio升级到3.2版本以上. 按照官网的说法:参考<ht ...
- 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署
少啰嗦,直接装 看过上一篇分布式文件系统 - FastDFS 简单了解一下的朋友应该知道,本次安装是使用目前余庆老师开源的最新 V5.05 版本,是余庆老师放在 Github 上的,和目前你能在网络上 ...
- 阿里云服务器Linux CentOS安装配置(五)jetty配置、部署
阿里云服务器Linux CentOS安装配置(五)jetty配置.部署 1.官网下载jetty:wget http://repo1.maven.org/maven2/org/eclipse/jetty ...
- 大叔也说Xamarin~Android篇~环境部署与破解
回到目录 现在移动开发很HOT,以至于很多人都转向了它,大叔也不例外,这次有机制接触一下xamarin这个东西,其实之前也用于xamarin,只是用来写网页程序,没有接触到移动开发,对于xamarin ...
- Android配置----adb工具的使用
Adb(android debug bridge):android 调试桥,用于将本地的文件 push 到环境中,或者从手机环境中 pull 文件到本地. 一.ADB的主要功能: · 运行设备的she ...
- SSD Cloud Hosting - Linode的配置和部署,搭建Java环境
0.发牢骚 前一个月在淘宝购买了个Jsp空间,挺便宜的,才38元/年.部署了程序,然后ALIMAMA验证网站,一直提示验证失败.最后找卖家,他说可能是因为空间太慢,照他的推荐换了最好的空间,138元/ ...
随机推荐
- eas之如何获取当前用户
在UI扩展类中,获取当前用户可通过工具类SysContext如:SysContext.getSysContext().getCurrentUserInfo()在ControlerBean的扩展类中,获 ...
- 优秀的web端 vue框架
之前得到消息vue在GitHub已经超过react,成为第一大框架,让我们来看看以vue为基础的开发框架有哪些? Element(start-28128) 饿了么前端推出的基于 Vue.js 2.0 ...
- cent OS官网上下载老版本系统镜像的正确打开方式
当时的情况是这样的: 客户需要给服务器安装cent OS 7.3操作系统,我打开官网https://www.centos.org/,点击“GET CENTOS”——>“Minimal ISO”, ...
- 自定义UEditor右键菜单
//打开右键菜单功能 ,enableContextMenu: true //右键菜单的内容,label留空支持国际化,否则以此配置为准 //,contextMenu:[ // { // label:' ...
- form提交表单中包含time类型数据
当数据库和实体类中含有date类型的数据时 ,form提交的时间数据只是string类型的,所以不能直接写入到java实体类和数据库,经过百度找到了解决方法 ,特地挪过来: 在controller中增 ...
- ACdream 1735 输油管道
输油管道 Time Limit: 2000/1000MS (Java/Others) Memory Limit: 262144/131072KB (Java/Others) Problem Des ...
- EXPLAIN sql优化方法(1) 添加索引
添加索引优化器更高效率地执行语句 假设我们有两个数据表t1和t2,每个有1000行,包含的值从1到1000.下面的查询查找出两个表中值相同的数据行: mysql> SELECT t1.i1, t ...
- EF--复杂类型
介绍EF复杂类型的文章 我理解的复杂类型就是简化了编码的操作,实际上在数据库中还是按照约定生成相应的类似"类名_类名"的表结构 public class CompanyAddres ...
- [Drupal]主题教程
drupal6和drupal7的主题开发有很大不同,本指南包含了这些不同 drupal7的默认主题是Bartik,6的是Garland drupal的主题系统是如何工作的 这部分内容主要讲述的是dru ...
- 【待解决】使用JUnit时报错java.lang
编写selenium自动化代码,代码逻辑应该都没有错,运行时老是报如下错误 java.lang.NoClassDefFoundError: org/json/JSONException 解决办法:导入 ...