IOS:将zXing导入到项目中
来源:互联网 发布:程序员有哪些方向 编辑:程序博客网 时间:2024/04/27 22:30
最近项目中要用到二维码扫描,去网上搜了下,决定用zXing,经过2天的奋斗,终于成功了,过程如下:
我用的zxingSDK是在网上搜的,已经剪切好的,所以剪切那个步骤就简单贴出来,
(1)剪切整合文件
ZXing(Github镜像地址)是一个开源的条码生成和扫描库(开源协议为Apache2.0)。它不但支持众多的条码格式,而且有各种语言的实现版本,它支持的语言包括:Java, C++, C#, Objective-C, ActionScript和Ruby。
首先去Google Code或Github将ZXing的代码下载下来,整个工程比较大,我们只需要其中涉及iOS的部分,所以最好做一些裁剪。简单来说,我们只需要保留cpp和iphone这2个文件夹,其余的全部删掉。如下图所示:
接着我们继续裁剪,对于cpp这个目录,只保留cpp/core/src/zxing下面的内容,其余内容也可以删掉了。但是整个目录结构必须保持原样。裁剪完后,整个目录结构如下所示:
这个就是我们需要的文件了,接下来,就到把他导入到我们的项目里了
(2)导入到项目
把裁剪后的zxing目录整个移动到我们的iOS项目的目录下,注意,不是通过xcode里面的addFile这样的方式的,是直接copy到项目目录里面,然后把上图中可以看到的ZXingWidget.xcodeproj文件拖动到我们的iOS工程中。这一步和容易就完成了。
(3)在xcode里面设置
1、在我们的iOS项目的设置中,点击build phases tab,然后增加 Target Dependencies 和 Link binary,增加这些framework依赖:
2、在设置中增加如下2个header search path:
./zxing/iphone/ZXingWidget/Classes
./zxing/cpp/core/src
a. AVFoundation
b. AudioToolbox
c. CoreVideo
d. CoreMedia
e. libiconv
f. AddressBook
g. AddressBookUI
b. AudioToolbox
c. CoreVideo
d. CoreMedia
e. libiconv
f. AddressBook
g. AddressBookUI
完成之后如下图所示:
./zxing/iphone/ZXingWidget/Classes
./zxing/cpp/core/src
需要注意的是,第一个path要设置成循环查找子目录,而第二个不循环查找,如下图所示:
3、在项目里面,项目-Targets-Build Setting里面Architectures将Build Architecture only 设置为YES.如下
4、在项目里面,项目-Targets-Build Settings Apple LLVM 6.0 -Language里面Compile Sources AS设置如下
5、项目-Targets-Build Settings Apple LLVM 6.0 -Language-c++ 设置如下
完成这些后,就可直接使用zXing了
问题:当使用时,程序停在
throw zxing::ReaderException("Could not find three finder patterns");
这一句,刚开始以为是有些地方设置的不对,后来才发现,因为加了个全局断点,取消断点,OK,正常了
0 0
- IOS:将zXing导入到项目中
- 如何将zxing导入到Android Studio项目
- 将MyEclipse项目导入到Eclipse中
- 将MyEclipse项目导入到Eclipse中
- 将cordova导入到androidstudio项目中
- 将项目导入到git中
- 把zxing导入到eclipse中
- 将eclispe中项目导入到Android Studio中
- iOS导入ZXing
- 将项目导入到MyEclipse
- 怎么将Myeclipse的WED项目导入到eclipse中
- 将Myeclipse、Eclipse中的项目导入到svn中
- 如何将MyEclipse的项目导入到netBeans中
- 将web项目导入到eclipse/MyEclipse中常见错误
- 如何将MyEclipse项目导入到Eclipse中
- 将eclipse中的项目导入到android studio 中
- 如何将项目快速导入到AndroidStudio中
- 将eclipse的maven项目导入到intellij idea中
- Eclipse 的单步调试
- emui3.0怎么找到usb调试?
- 新浪微博(第三天)
- Android 打造炫目的圆形菜单 秒秒钟高仿建行圆形菜单
- Oracle修改字段类型方法总结
- IOS:将zXing导入到项目中
- 高仿酷狗新版本音乐播放器
- LeetCode Submission Details
- anychart学习笔记之一javaScript中创建anychart
- xcode APP 打包以及提交apple审核详细流程
- whenever使用方法
- xcodebuild
- 转载--最简实例说明wait、notify、notifyAll的使用方法
- leetcode 13 Roman to Integer