首先這里是自己花了整整一個下午的時間查找整理出來的,借鑒了一個比較不錯博客,也很感謝他的詳細步驟。
支持的格式如下:
我的環境是win8.1專業版。
zxing官網說明:https://github.com/zxing/zxing/wiki/Getting-Started-Developing
源碼下載:https://github.com/zxing/zxing
或者releases版本:https://github.com/zxing/zxing/releases(其實都差不多一樣)
需要的工具:
Ant: http://ant.apache.org/bindownload.cgi
Maven: http://maven.apache.org/download.cgi
然后下載的東西都解壓我的是桌面臨時創建的一個文件夾test
下面就是分別配置ant和Maven環境變量了,至於怎么進入系統環境變量,我就不那么墨跡的說了,只給截圖我認為關鍵的地方。
兩個方法一樣,我這里配置ant一個給大家看看:
就是你剛剛解壓的位置我的如下到bin目錄下復制
C:\Users\xiang\Desktop\test\apache-ant-1.9.4-bin\apache-ant-1.9.4\bin;
path里面最后加英文分號,然后把我的那個路徑貼進去,你們的都要貼自己的路徑,
然后運行cmd,輸入ant驗證
這就ok了。
Maven的配置方法不在贅述,
這就ok了。
確保你已經有了java運行環境,如JAVA_HOME、CLASSPATH、PATH都配置好了
進入到zxing-master\android目錄,輸入命令:android update project --path .
(上面的命令不要省略“--”和后面的點)
1 C:\Users\xiang\Desktop\test\zxing-master\android>android update project --path. 2 Error: Flag '--path.' is not valid for 'update project'. 3 4 Usage: 5 android [global options] update project [action options] 6 Global options: 7 -h --help : Help on a specific command. 8 -v --verbose : Verbose mode, shows errors, warnings and all messages. 9 --clear-cache: Clear the SDK Manager repository manifest cache. 10 -s --silent : Silent mode, shows errors only. 11 12 Action "update project": 13 Updates an Android project (must already have an AndroidManifest.xml). 14 Options: 15 -l --library : Directory of an Android library to add, relative to this 16 project's directory. 17 -p --path : The project's directory. [required] 18 -n --name : Project name. 19 -t --target : Target ID to set for the project. 20 -s --subprojects: Also updates any projects in sub-folders, such as test 21 projects.
出錯了,需要我們提供一個target,輸入命令:android list targets
C:\Users\xiang\Desktop\test\zxing-master\android>android list targets Available Android targets: ---------- id: 1 or "android-8" Name: Android 2.2 Type: Platform API level: 8 Revision: 3 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WVGA800 (default), WVGA854 Tag/ABIs : default/armeabi ---------- id: 2 or "android-18" Name: Android 4.3.1 Type: Platform API level: 18 Revision: 3 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W XGA720, WXGA800, WXGA800-7in Tag/ABIs : default/armeabi-v7a, default/x86 ---------- id: 3 or "android-19" Name: Android 4.4.2 Type: Platform API level: 19 Revision: 4 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W XGA720, WXGA800, WXGA800-7in Tag/ABIs : default/armeabi-v7a, default/x86 ---------- id: 4 or "android-21" Name: Android 5.0 Type: Platform API level: 21 Revision: 1 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W XGA720, WXGA800, WXGA800-7in Tag/ABIs : android-tv/armeabi-v7a, android-tv/x86, default/armeabi-v7a, default /x86, default/x86_64 ---------- id: 5 or "Google Inc.:Google APIs:8" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 2 Description: Android + Google APIs Based on Android 2.2 (API level 8) Libraries: * com.google.android.maps (maps.jar) API for Google Maps Skins: HVGA, QVGA, WQVGA400, WQVGA432, WVGA800 (default), WVGA854 Tag/ABIs : default/armeabi ---------- id: 6 or "Google Inc.:Google APIs:18" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 3 Description: Android + Google APIs Based on Android 4.3.1 (API level 18) Libraries: * com.google.android.media.effects (effects.jar) Collection of video effects * com.android.future.usb.accessory (usb.jar) API for USB Accessories * com.google.android.maps (maps.jar) API for Google Maps Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W XGA720, WXGA800, WXGA800-7in Tag/ABIs : default/armeabi-v7a ---------- id: 7 or "Google Inc.:Glass Development Kit Preview:19" Name: Glass Development Kit Preview Type: Add-On Vendor: Google Inc. Revision: 10 Description: Preview of the Glass Development Kit Based on Android 4.4.2 (API level 19) Libraries: * com.google.android.glass (gdk.jar) APIs for Glass Development Kit Preview Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W XGA720, WXGA800, WXGA800-7in Tag/ABIs : no ABIs. ---------- id: 8 or "Google Inc.:Google APIs:19" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 8 Description: Android + Google APIs Based on Android 4.4.2 (API level 19) Libraries: * com.google.android.media.effects (effects.jar) Collection of video effects * com.android.future.usb.accessory (usb.jar) API for USB Accessories * com.google.android.maps (maps.jar) API for Google Maps Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W XGA720, WXGA800, WXGA800-7in Tag/ABIs : default/armeabi-v7a ---------- id: 9 or "Google Inc.:Google APIs (x86 System Image):19" Name: Google APIs (x86 System Image) Type: Add-On Vendor: Google Inc. Revision: 8 Description: Android x86 + Google APIs Based on Android 4.4.2 (API level 19) Libraries: * com.google.android.media.effects (effects.jar) Collection of video effects * com.android.future.usb.accessory (usb.jar) API for USB Accessories * com.google.android.maps (maps.jar) API for Google Maps Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W XGA720, WXGA800, WXGA800-7in Tag/ABIs : default/x86 ---------- id: 10 or "Google Inc.:Google APIs:21" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 1 Description: Android + Google APIs Based on Android 5.0 (API level 21) Libraries: * com.google.android.media.effects (effects.jar) Collection of video effects * com.android.future.usb.accessory (usb.jar) API for USB Accessories * com.google.android.maps (maps.jar) API for Google Maps Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W XGA720, WXGA800, WXGA800-7in Tag/ABIs : no ABIs.
根據輸出的ID,加上target,命令:android update project --target 2 --path .
C:\Users\xiang\Desktop\test\zxing-master\android>android update project --target 2 --path . Updated and renamed default.properties to project.properties Updated local.properties No project name specified, using Activity name 'CaptureActivity'. If you wish to change it, edit the first line of build.xml. Added file C:\Users\xiang\Desktop\test\zxing-master\android\build.xml Added file C:\Users\xiang\Desktop\test\zxing-master\android\proguard-project.txt
會生成以下文件:
上面生成的文件我已經標注出來了。
其中:local.properties文件的內容是:SDK的目錄
# This file is automatically generated by Android Tools. # Do not modify this file -- YOUR CHANGES WILL BE ERASED! # # This file must *NOT* be checked into Version Control Systems, # as it contains information specific to your local configuration. # location of the SDK. This is only used by Ant # For customization when using a Version Control System, please read the # header note. sdk.dir=D:\\adt-bundle-windows-x86_64-20130917\\sdk
編譯jar包在zxing-master\core目錄下輸入:mvn -DskipTests -Dgpg.skip=true install
這里有些地方可能被和諧,導致無法下載,至於翻牆或者怎么的,各自顯神通吧。
我的成功后如下,你們看看
這就表明ok了。
運行完之后core目錄下會生成一個target目錄,其中:core-3.1.0.jar就是我們需要的jar包
這個后綴名跟選的版本有點關系,都能使用,我選的這個是id為2的,也就是4.3.1。
我也選過5.0那個,出來的效果是一樣的,直接就可以使用了。
下面開始編譯Android項目,生成apk了,這里有兩種方法:
一、命令實現
繼續在cmd下執行,進入zxing-master\android里輸入ant debug
C:\Users\xiang\Desktop\test\zxing-master\android>ant debug Buildfile: C:\Users\xiang\Desktop\test\zxing-master\android\build.xml -set-mode-check: -set-debug-files: -check-env: [checkenv] Android SDK Tools Revision 23.0.5 [checkenv] Installed at D:\adt-bundle-windows-x86_64-20130917\sdk -setup: [echo] Project Name: CaptureActivity [gettype] Project Type: Application -set-debug-mode: -debug-obfuscation-check: -pre-build: -build-setup: [getbuildtools] Using latest Build Tools: 21.0.2 [echo] Resolving Build Target for CaptureActivity... [gettarget] Project Target: Android 4.3.1 [gettarget] API level: 18 [echo] ---------- [echo] Creating output directories if needed... [mkdir] Created dir: C:\Users\xiang\Desktop\test\zxing-master\android\bin [mkdir] Created dir: C:\Users\xiang\Desktop\test\zxing-master\android\bin\re s [mkdir] Created dir: C:\Users\xiang\Desktop\test\zxing-master\android\bin\rs Obj [mkdir] Created dir: C:\Users\xiang\Desktop\test\zxing-master\android\bin\rs Libs [mkdir] Created dir: C:\Users\xiang\Desktop\test\zxing-master\android\gen [mkdir] Created dir: C:\Users\xiang\Desktop\test\zxing-master\android\bin\cl asses [mkdir] Created dir: C:\Users\xiang\Desktop\test\zxing-master\android\bin\de xedLibs [echo] ---------- [echo] Resolving Dependencies for CaptureActivity... [dependency] Library dependencies: [dependency] No Libraries [dependency] [dependency] ------------------ [echo] ---------- [echo] Building Libraries with 'debug'... [subant] No sub-builds to iterate on -code-gen: [mergemanifest] Merging AndroidManifest files into one. [mergemanifest] Manifest merger disabled. Using project manifest only. [echo] Handling aidl files... [aidl] No AIDL files to compile. [echo] ---------- [echo] Handling RenderScript files... [echo] ---------- [echo] Handling Resources... [aapt] Generating resource IDs... [echo] ---------- [echo] Handling BuildConfig class... [buildconfig] Generating BuildConfig class. -pre-compile: -compile: [javac] Compiling 75 source files to C:\Users\xiang\Desktop\test\zxing-maste r\android\bin\classes [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:57: 錯誤: 找不到符號 [javac] cameraResolution = CameraConfigurationUtils.findBestPreviewSizeV alue(parameters, screenResolution); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:79: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setFocus( [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:87: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setInvertColor(parameters); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:91: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setBarcodeSceneMode(parameters); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:95: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setVideoStabilization(parameters); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:96: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setFocusArea(parameters); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:97: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setMetering(parameters); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:151: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setTorch(parameters, newSetting); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:154: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setBestExposure(parameters, newSettin g); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] 9 個錯誤 BUILD FAILED D:\adt-bundle-windows-x86_64-20130917\sdk\tools\ant\build.xml:720: The following error occurred while executing this line: D:\adt-bundle-windows-x86_64-20130917\sdk\tools\ant\build.xml:734: Compile faile d; see the compiler error output for details. Total time: 4 seconds C:\Users\xiang\Desktop\test\zxing-master\android>
一般有兩個問題:
一、[gettarget] WARNING: Attribute minSdkVersion in AndroidManifest.xml (15) is higher than the project target API level (14)
原因是:
project.properties文件中配置的target=android-14而AndroidManifest.xml文件中
<uses-sdk android:minSdkVersion="15" android:targetSdkVersion="19"/>
修改ses-sdk android:minSdkVersion="14"就可以了。
(這個我的版本比較高,就沒有報這個錯)
二、是JDK版本的問題
修改:D:\adt-bundle-windows-x86_64-20130917\sdk\tools\ant\build.xml
<!-- compilation options --> <property name="java.encoding" value="UTF-8" /> <property name="java.target" value="1.5" /> <property name="java.source" value="1.5" /> <property name="java.compilerargs" value="" /> <property name="java.compiler.classpath" value="" />
為如下
<!-- compilation options --> <property name="java.encoding" value="UTF-8" /> <property name="java.target" value="7" /> <property name="java.source" value="7" /> <property name="java.compilerargs" value="" /> <property name="java.compiler.classpath" value="" />
改好之后又有新問題了
C:\Users\xiang\Desktop\test\zxing-master\android>ant debug Buildfile: C:\Users\xiang\Desktop\test\zxing-master\android\build.xml -set-mode-check: -set-debug-files: -check-env: [checkenv] Android SDK Tools Revision 23.0.5 [checkenv] Installed at D:\adt-bundle-windows-x86_64-20130917\sdk -setup: [echo] Project Name: CaptureActivity [gettype] Project Type: Application -set-debug-mode: -debug-obfuscation-check: -pre-build: -build-setup: [getbuildtools] Using latest Build Tools: 21.0.2 [echo] Resolving Build Target for CaptureActivity... [gettarget] Project Target: Android 4.3.1 [gettarget] API level: 18 [echo] ---------- [echo] Creating output directories if needed... [mkdir] Created dir: C:\Users\xiang\Desktop\test\zxing-master\android\bin\rs Obj [mkdir] Created dir: C:\Users\xiang\Desktop\test\zxing-master\android\bin\rs Libs [echo] ---------- [echo] Resolving Dependencies for CaptureActivity... [dependency] Library dependencies: [dependency] No Libraries [dependency] [dependency] ------------------ [echo] ---------- [echo] Building Libraries with 'debug'... [subant] No sub-builds to iterate on -code-gen: [mergemanifest] Found Deleted Target File [mergemanifest] Merging AndroidManifest files into one. [mergemanifest] Manifest merger disabled. Using project manifest only. [echo] Handling aidl files... [aidl] No AIDL files to compile. [echo] ---------- [echo] Handling RenderScript files... [echo] ---------- [echo] Handling Resources... [aapt] Found Deleted Target File [aapt] Generating resource IDs... [echo] ---------- [echo] Handling BuildConfig class... [buildconfig] Generating BuildConfig class. -pre-compile: -compile: [javac] Compiling 73 source files to C:\Users\xiang\Desktop\test\zxing-maste r\android\bin\classes [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:57: 錯誤: 找不到符號 [javac] cameraResolution = CameraConfigurationUtils.findBestPreviewSizeV alue(parameters, screenResolution); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:79: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setFocus( [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:87: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setInvertColor(parameters); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:91: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setBarcodeSceneMode(parameters); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:95: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setVideoStabilization(parameters); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:96: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setFocusArea(parameters); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:97: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setMetering(parameters); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:151: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setTorch(parameters, newSetting); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxin g\client\android\camera\CameraConfigurationManager.java:154: 錯誤: 找不到符號 [javac] CameraConfigurationUtils.setBestExposure(parameters, newSettin g); [javac] ^ [javac] 符號: 變量 CameraConfigurationUtils [javac] 位置: 類 CameraConfigurationManager [javac] 9 個錯誤 BUILD FAILED D:\adt-bundle-windows-x86_64-20130917\sdk\tools\ant\build.xml:720: The following error occurred while executing this line: D:\adt-bundle-windows-x86_64-20130917\sdk\tools\ant\build.xml:734: Compile faile d; see the compiler error output for details. Total time: 4 seconds C:\Users\xiang\Desktop\test\zxing-master\android>
沒有CameraConfigurationUtils類
搜索下就可以找到,應該在android-core里面有這個類
直接把這個目錄拷貝到C:\Users\xiang\Desktop\test\zxing-master\android\src\com\google\zxing\client\android\camera里面
然后再編譯,效果圖如下,不用多說了
apk已經生成了。你看看
看bin里已經有對應的apk了,自己跑跑看。
二、第二種方法就是直接導入到Eclipse,這種方法我不再詳細演示了,直接導入android項目,然后把添加lib文件夾,放入前面生成的jar包,
加入對應的那個類
運行的時候可能會報錯。
12-11 17:36:01.470: E/AndroidRuntime(13311): FATAL EXCEPTION: main 12-11 17:36:01.470: E/AndroidRuntime(13311): java.lang.ExceptionInInitializerError 12-11 17:36:01.470: E/AndroidRuntime(13311): at java.lang.Class.newInstanceImpl(Native Method) 12-11 17:36:01.470: E/AndroidRuntime(13311): at java.lang.Class.newInstance(Class.java:1319) 12-11 17:36:01.470: E/AndroidRuntime(13311): at android.app.Instrumentation.newActivity(Instrumentation.java:1053) 12-11 17:36:01.470: E/AndroidRuntime(13311): at com.lbe.security.service.core.client.b.x.newActivity(Unknown Source) 12-11 17:36:01.470: E/AndroidRuntime(13311): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1996) 12-11 17:36:01.470: E/AndroidRuntime(13311): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2106) 12-11 17:36:01.470: E/AndroidRuntime(13311): at android.app.ActivityThread.access$600(ActivityThread.java:137) 12-11 17:36:01.470: E/AndroidRuntime(13311): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1202) 12-11 17:36:01.470: E/AndroidRuntime(13311): at android.os.Handler.dispatchMessage(Handler.java:99) 12-11 17:36:01.470: E/AndroidRuntime(13311): at android.os.Looper.loop(Looper.java:137) 12-11 17:36:01.470: E/AndroidRuntime(13311): at android.app.ActivityThread.main(ActivityThread.java:4819) 12-11 17:36:01.470: E/AndroidRuntime(13311): at java.lang.reflect.Method.invokeNative(Native Method) 12-11 17:36:01.470: E/AndroidRuntime(13311): at java.lang.reflect.Method.invoke(Method.java:511) 12-11 17:36:01.470: E/AndroidRuntime(13311): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 12-11 17:36:01.470: E/AndroidRuntime(13311): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) 12-11 17:36:01.470: E/AndroidRuntime(13311): at dalvik.system.NativeStart.main(Native Method) 12-11 17:36:01.470: E/AndroidRuntime(13311): Caused by: java.lang.NoClassDefFoundError: com.google.zxing.ResultMetadataType 12-11 17:36:01.470: E/AndroidRuntime(13311): at com.google.zxing.client.android.CaptureActivity.<clinit>(CaptureActivity.java:93) 12-11 17:36:01.470: E/AndroidRuntime(13311): ... 16 more
按照網上很多說法
到處搜索解決方案,終於在google的幫助下解決了。
在eclipse中 Properties -> Java Build Path -> "Order and Export"
在Order and Export選項卡中將core.jar提前到第一位 並選中它
然后clean你的工程,這一步非常重要,別忘記了
重新編譯運行就可以了
估計是在core.jar之前的包里已經有了同名的class所以編譯之后產生的apk運行時找不到真正的引用。而且這個包也需要被同時發布到程序中去
如果還是有錯誤的話,那就缺少了javase-3.1.0.jar庫
生成辦法跟core一樣C:\Users\xiang\Desktop\test\zxing-master\javase>mvn -DskipTests -Dgpg.skip=true install
后面我就不貼圖了,同樣把對應的包放入lib然后add buildpath編譯,還有問題,你就考慮考慮吧Eclipse換個高版本的吧。
至於掃描效果圖,我真機也就不展示了,截個圖給你們看看吧
完整正常運行源碼如下:
http://download.csdn.net/detail/u011348453/8249681