赞
踩
一、配置ndk
这就不说了,网上一大堆,随便一搜就搞定了
二、下载zbar源码
1、下载Zbar、libiconv源码
到ZBar的Github托管主页上下载 https://github.com/ZBar/ZBar
下载libiconv,http://www.gnu.org/software/libiconv/#downloading
2、编译libiconv
编译libiconv需要在linux环境下,(libiconv已编译,无需重复此步骤)
3、编译zbar
解压zbar,
- 在项目中app/src/main/目录下新建jni文件夹
- 把编译好的libiconv放入我们项目的jni文件夹。
- 解压刚才下载好的Zbar,首先把Zbar的头文件所在文件夹zbar/include放入我们项目的jni文件夹下。
- 把Zbar对java的接口文件zbarjni.c放入我们项目的jni文件夹,zbrjni.c在zbar/java文件夹下。
- 把Zbar的核心库文件所在的文件夹zbar/zbar放到我们项目的jni文件夹下。
- 把Zbar编译时需要的Android.mk、Applicaiton.mk、config.h从zbar\android\jni下拷贝到我们项目的jni文件夹下
根据zbar目录结构,对Android.mk进行改动,主要改的是文件夹路径和文件路径,修改后的Android.mk的内容如下:
MY_LOCAL_PATH := $(call my-dir)
# libiconv
include $(CLEAR_VARS)
LOCAL_PATH := $(MY_LOCAL_PATH)
LOCAL_MODULE := libiconv
LOCAL_CFLAGS := \
-Wno-multichar \
-D_ANDROID \
-DLIBDIR="c" \
-DBUILDING_LIBICONV \
-DBUILDING_LIBCHARSET \
-DIN_LIBRARY
LOCAL_SRC_FILES := \
libiconv-1.15/lib/iconv.c \
libiconv-1.15/libcharset/lib/localcharset.c \
libiconv-1.15/lib/relocatable.c
LOCAL_C_INCLUDES := \
$(LOCAL_PATH)/libiconv-1.15/include \
$(LOCAL_PATH)/libiconv-1.15/libcharset \
$(LOCAL_PATH)/libiconv-1.15/libcharset/include
include $(BUILD_SHARED_LIBRARY)
LOCAL_LDLIBS := -llog -lcharset
# libzbarjni
include $(CLEAR_VARS)
LOCAL_PATH := $(MY_LOCAL_PATH)
LOCAL_MODULE := zbar
LOCAL_SRC_FILES := zbarjni.c \
zbar/img_scanner.c \
zbar/decoder.c \

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。