0. 背景
二维码扫描功能随处可见,基本库网上也有很多资源,但最好用的就是ZBar的库。ZBarSDK-for-iOS适配armv7, amrv7s, arm64的github地址,在XCode上引入安装参考:stackoverflow回答。本文讲述怎样引入ZBarSDK-for-iOS,并且作为Unity3D引擎的Plugins的形式,实现IOS设备二维码的扫描功能。
1. 下载ZBarSDK
使用download下载zip或是git clone都可以将上述github上获得SDK源码及库。目录结构如下:
2. 移动SDK至Plugins
将libzbar.a
放到在上图的ZBarSDK目录中,并且将ZBarSDK放到Unity3D的Assets/Scripts/Plugins
中,如图所示:
图2:移动SDK至Plugins
3. 添加从Plugins暴露供C#调用接口
Plugins中SDK源码及文件最终导出三个接口,以供Unity引擎层C#调用,他们是:
#ifdef __cplusplus
extern "C" {
#endif
void launchScannerImpl(struct ConfigStruct *confStruct);
bool getScannedImageImpl(unsigned char** imageData, int* imageDataLength);
void decodeImageImpl(int symbols, const char* pixelBytes, int64_t length);
#ifdef __cplusplus
}