参照网上各大神文章,自己总结了下如下,欢迎大家指正与交流!(主参照:http://blog.csdn.net/brokge/article/details/9045629)

1. 到 github下载开源库 (https://github.com/zxing/zxing)

2. 得到代码后只需要 cpp部分和iphone部分,如下:

3. 继续剪裁 cpp 和iphone文件夹,如下:

4.将修改好的zxing文件夹全部添加到我们的目标工程中,并且把ZXingWidget.xcodeproj文件拖到工程

5. 添加依赖Framework:

AVFoundation  AudioToolbox  CoreVideo  CoreMedia   libiconv  AddressBook  AddressBookUI

6.

7. 选择工程,targets,build settings,找到 header search path,添加值:

./zxing/iphone/ZXingWidget/Classes                recursive

./zxing/cpp/core/src                           non-recursive

我的路径是:

到此环境搭建完成,下一步开始调用

8.引用:

#import <ZXingWidgetController.h>  #import <QRCodeReader.h>

别忘了设置代理

然后:

注意:

1. 修改当前的 XXviewController.m文件为XXviewController.mm            解决:iosstream file not found

2. 在Zxing所在的工程中build setting下Other warning flags选项删除"-Werror"和"-Wno-unused-parameter"两个编译选项,即可消除此错误。    解决: private field 'cached_y_' is not used

推荐一个不错的在线生成二维码的网站:http://cli.im/

.m文件与.mm文件区别:

.m文件是纯Object-C 文件 ;  .m只能调用纯Object-C的类,不能调用混合的

.mm是Object-C和C++混合文件 ; .mm可以调用Object-C的,也可以调用C++的

http://blog.csdn.net/ysy441088327/article/details/8515556 总结的也很好。

iOS中的zxing集成步骤的更多相关文章

  1. 在iOS中使用ZXing库[转]

    前言 ZXing(Github镜像地址)是一个开源的条码生成和扫描库(开源协议为Apache2.0).它不但支持众多的条码格式,而且有各种语言的实现版本,它支持的语言包括:Java, C++, C#, ...

  2. 直播软件开发关于Android、iOS中的视频采集步骤

    很多人对直播软件开发还是抱有想法的,但是在这个资本冷静的市场下,直播平台该怎么玩,在直播软件开发过程中哪些功能是必须具备的,这都是值得关注的话题.今天我们给大家分享一份详细的直播软件开发关于Andro ...

  3. IOS中微博正文开发步骤总结

    微博正文开发步骤总结 1.新建正文控制器,在点击首页的某一条微博时跳转过去 2.在MainController中设置导航控制器的代理,监听所有导航控制器的跳转 1> 如果即将显示的不是根控制器 ...

  4. iOS极光推送集成步骤

    1.下载SDK,导入Xcode 2.在苹果开发者中心建立AppId与bundleID进行关联,注意勾选推送功能 3.在苹果开发者中心建立推送证书 4.在极光后台建立应用且上传推送证书 5.建立描述文件 ...

  5. ios中友盟集成好使用总结

    参考链接:https://www.jianshu.com/p/a8ff46a7c966

  6. iOS实用技能扩展-集成支付宝

    前奏 现在随着移动开发的快速发展,移动支付变得越来越流行与必不可少.最近做了一个关于支付宝支付功能的应用,在使用支付宝的过程中,遇到一些不必要的弯路,因此,写了这篇文章总结一下关于iOS中如何开发使用 ...

  7. iOS中集成ijkplayer视频直播框架

    ijkplayer 是一款做视频直播的框架, 基于ffmpeg, 支持 Android 和 iOS, 网上也有很多集成说明, 但是个人觉得还是不够详细, 在这里详细的讲一下在 iOS 中如何集成ijk ...

  8. 软件測试、ios中的測试概念以及步骤

    软件測试: 软件測试的目标是应该服务于软件项目的目标,能够通过建议反馈使用更加高效的方法和工具,提升软件开发效率以及软件开发质量.同一时候还能够通过过一些手段,更早.更快.很多其它地发现缺陷.从容减少 ...

  9. iOS中支付宝集成

    iOS中支付宝集成 如今各种的App中都使用了三方支付的功能,现在将我在使用支付宝支付集成过程的心得分享一下,希望对大家都能有所帮助 要集成一个支付宝支付过程的环境,大致需要: 1>公司:先与支 ...

随机推荐

  1. AspNet Core 初步认识

    Core 的出现对我我没有很大的影响,当时在Core要发布的时候听到周围的人再聊再谈,我没有去太多关注,就是一个屌丝开发人员. 直到又一次偶然见到一位特别喜欢.net的老开发人员谈起Core时落泪了, ...

  2. form表单参数传递和url参数传递的区别

    template: form表单: <form action="" method='GET'> <div class="input-group" ...

  3. 參与 Spring 4 中文文档翻译

    參与 Spring 4 中文文档翻译 我们从2014年12月開始翻译Spring 4的框架文档.尽管至今已有一年,可是进度非常慢. 当中一部分原因是由于Spring 文档有1000多页,并且翻译的时候 ...

  4. UVA 1426 - Discrete Square Roots(数论)

    UVA 1426 - Discrete Square Roots 题目链接 题意:给定X, N. R.要求r2≡x (mod n) (1 <= r < n)的全部解.R为一个已知解 思路: ...

  5. git忽略文件

    .gitignore文件配置 ###################### # Project Specific ###################### /src/main/webapp/dis ...

  6. django+Python数据库利用Echarts实现网页动态数据显示

    这几天一直在思考前端--服务器--数据库的之间的数据交互,最后决定了用django来做,为什么呢?因为我这只是在开发阶段,所以就用了django自带的web服务器(很方便)而且呢,它还自带了数据库sq ...

  7. 【CSS3】文本属性

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. Simple Games Using SpriteKit

    p.p1 { margin: 0.0px 0.0px 12.0px 0.0px; line-height: 14.0px; font: 12.0px Times; color: #000000 } s ...

  9. ES6中Promise对象个人理解

    Promise是ES6原生提供的一个用来传递异步消息的对象.它减少了传统ajax金字塔回调,可以将异步操作以同步操作的流程表达出来使得代码维护和可读性方面好很多. Promise的状态: 既然是用来传 ...

  10. cd 命令详解

    cd 命令 作用:  cd 用来切换目录,目录表示法可为绝对路径或相对路径, 若目录名称省略,则变换至使用者的登陆目录. ~ 可表示为家目录,.为当前目录,..为上级目录 语法: cd (选项)(参数 ...