手机二维码应用潜力无限

 

二维码技术:二维条码是指在一维条码的基础上扩展出另一维具有可读性的条码,使用黑白矩形图案表示二进制数据,被设备扫描后可获取其中所包含的信息。一维条码的宽度记载着数据,而其长度没有记载数据。二维条码的长度、宽度均记载着数据。二维条码有一维条码没有的“定位点”和“容错机制”。容错机制在即使没有辨识到全部的条码、或是说条码有污损时,也可以正确地还原条码上的资讯。(来源:维基百科

图:常见的一维码

图:常见的二维码图案

据有关资料记载,其实二维码并不是什么新技术,早在上个世纪的90年代就已经存在。在日韩地区,二维码应用的普及率达到了96%。但是在中国,二维码受到百姓的广泛关注却是最近的事情。随着移动互联网的快速发展,二维码似乎有借着移动互联的东风重新崛起的趋势,越来越多的开发商和开发团队推出了大量的二维码相关应用。在2012年春节期间,支付宝就实现了通过二维码进行银行卡转账和送红包的功能,允许用户在支付宝平台在线生产、制作“电子红包”二维码,其包含了转账金额、收款人和祝福语等信息,并通过互联网发送至收款人,收款人使用相关设备扫描二维码后,账款就可以成功地转入其银行账户中。

思路点评:

其实从2011年上半年开始,二维码的应用就开始了大规模的普及,各种二维码识别软件纷纷涌现,被广泛地用于网上购物、获取优惠券、身份识别等方面。现在,只要拥有一部移动智能终端,并且安装一款二维识别软件,你就能马上破解二维码中隐藏的信息。而且,二维码的核心代码是开源的,因此并不存在技术难题,国内从事二维码识别的开发商或团队都是在此基础上做二次开发,应用领域各有侧重。

图:二维码技术已被开发者广泛使用

虽然说二维码应用是一个趋势,但是商业模式无疑是广大开发者最关心的问题。有些开发者也在商业模式上进行了探索,比如说通过加入LBS功能,为企业跟踪用户扫描二维码的地点、用户的购买行为等服务。有专业人士也表示:“二维码使用户获取信息变得非常容易,具有媒体价值,营销的跟进是必然的。”

图:火车票上的二维码

去年火车票二维码泄露购票者个人信息的报道令人关注,许多用户开始觉得二维码并不安全。由于火车票二维码在生成过程中没有进行加密,目前移动应用市场中的二维码扫描软件都可以读取其中的信息。事件发生后,开发商灵动快拍对软件进行了升级,将用户的个人信息进行了加密过滤处理。升级后的软件将无法再扫描到二维码中完整的身份证号码。

支付宝称将推出二维码支付解决方案,用户只要用支付宝客户端扫描商品的二维码并且在客户端确认支付,就可以完成交易。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先需要在Qt项目中添加zbar的库文件和头文件。可以通过以下步骤实现: 1. 下载zbar的库文件,可以从zbar官网(http://zbar.sourceforge.net/)下载最新版本的zbar库,解压后将头文件和库文件复制到Qt项目中。 2. 在Qt项目.pro文件中添加zbar的库文件路径和头文件路径,例如: ``` INCLUDEPATH += /path/to/zbar/include LIBS += -L/path/to/zbar/lib -lzbar ``` 其中`/path/to/zbar`是zbar的库文件路径。 3. 在Qt项目中添加一个QCamera对象,用于打开安卓手机的摄像头。 4. 在Qt项目中添加一个QCameraViewfinder对象,并将其设置为QCamera的视图。 5. 在Qt项目中添加一个QCameraImageCapture对象,用于捕获摄像头中的图像。 6. 在Qt项目中添加一个QLabel对象,用于显示解析后的二维码信息。 7. 在Qt项目中添加一个QPushButton对象,并在其槽函数中实现解析二维码的功能,例如: ``` void MainWindow::onDecodeButtonClicked() { // 获取QCameraImageCapture对象 QCameraImageCapture *imageCapture = camera->service()->requestImageCapture(); // 捕获图像 imageCapture->capture(); // 等待图像捕获完成 QEventLoop loop; QObject::connect(imageCapture, &QCameraImageCapture::imageCaptured, &loop, &QEventLoop::quit); loop.exec(); // 获取捕获的图像 QImage image = imageCapture->image(); // 构造zbar解码器 zbar::ImageScanner scanner; scanner.set_config(zbar::ZBAR_NONE, zbar::ZBAR_CFG_ENABLE, 1); // 将图像转换为zbar图像 zbar::Image zbarImage(image.width(), image.height(), "Y800", image.bits(), image.width() * image.height()); // 解析二维码 scanner.scan(zbarImage); // 获取解析结果 zbar::Image::SymbolIterator symbol = zbarImage.symbol_begin(); if (symbol != zbarImage.symbol_end()) { // 显示解析结果 QString result = QString::fromStdString(symbol->get_data()); ui->resultLabel->setText(result); } else { // 显示未解析出二维码的提示信息 ui->resultLabel->setText("未识别出二维码"); } } ``` 这段代码中,首先获取QCameraImageCapture对象,然后捕获图像并等待图像捕获完成。接着,构造zbar解码器,将捕获的图像转换为zbar图像,然后解析二维码,并获取解析结果。 最后,将解析结果显示在QLabel对象中,或者显示未解析出二维码的提示信息。 这样,就可以在Qt6.4中使用zbar解析安卓手机二维码了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值