写景的片段基于Qt for Android软件开发
设计软件
梁子财
【期刊名称】《《科技与创新》》
【年(卷),期】2019(000)017
【总页数】3页(P95-96)
【关键词】QtforAndroid; ; Android软件; 软件开发
【作 者】梁子财
【作者单位】[1]华中科技大学中欧清洁与可再生能源学院 湖北武汉430074
【正文语种】中 文
董洁梁朝伟【中图分类】TP311.52
韩雨芹整容随着智能手机与互联网的快速发展,移动终端用户激增,移动终端成为从互联网获取信息和服务的一种重要手段[1]。移动支付也正在替代传统支付方式成为最常用的支付手段[2]。目前的移动支付较多采用手机扫描二维码进行支付操作。Qt for Android是用于在Android上进行开发的Qt平台,利用该平台可以使用C++语言开发Android软件。
笔者开发了一款基于QT for Android的软件,用户可以利用该软件对二维码进行扫描识别。
通常手机识别二维码有两种方式,一种是利用手机相机对二维码进行扫描识别,另一种是打开手机相册直接读取二维码照片进行识别。但是Qt平台没有直接调用安卓手机相机与相册的接口,需要通过JNI接口调用JAVA程序来间接调用手机相机与相册。
想学花艺将来开花店因此本软件的设计分为两部分,一部分是摄像头扫描模块,另一部分是相册读取模块,如图1所示。
摄像头扫描模块需要实现两部分功能:①基于QML语言设计扫描动画、定位框与蒙影;②基于JNI接口调用安卓手机摄像头读取相机数据。相册模块只需利用JNI接口调用安卓手机原生相册浏览界面,让用户选择带读取照片即可。
两种模块扫描二维码之后需要对二维码进行解码。笔者利用QZXing库进行二维码解码,部分实行代码如下:
// 调用QZXing的函数进行
    QZXing decoder;
QString qrmsg=decoder.decodeImage(img,iWidth,iHeight,false);
摄像头扫描模块分为两部分,一部分是设计扫描动画、定位框等,另一部分是调用安卓手机相机读取相机数据。
QML是一种陈述性语言,用来描述一个程序的用户界面:是什么样子以及它如何表现。笔者利用QML语言设计的动画、定位框等,效果如图2所示。
绘制定位框的QML代码如下:
    //画右上的边角
玩游戏不能全屏
t没有直接调用安卓手机相机的接口,因此需要利用JNI接口调用安卓手机相机。在软件开启时,系统会自动调用函数checkPermission("android.permission.CAMERA")获取开启相机的权限,之后在QML代码中添加相机录像显示代码,如下所示:
相册模块利用JNI接口调用安卓手机原生相册浏览界面,让用户选择带读取照片,其界面效果如图3所示。
调用JNI接口实现打开手机相册的代码如下:
笔者基于Qt for Android开发了一款Android软件,为基于手机识别技术提供借鉴,同时通过实验验证,证明该软件能迅速读取二维码数据,具有实用性。
【相关文献】
[1]罗军舟,吴文甲,杨明.移动互联网:终端、网络与服务[J].计算机学报,2011,34(11):2029-2051.
[2]曹婷,梁婧婕,吕璞鑫,等.移动支付对大学生消费的影响探析[J].中国商论,2016(14):95-96.