在自己的Android应用程序中集成zxing

时间:2013-04-28 17:03:57

标签: java android zxing

嗨,我是android的初学者。我想写一个集成了zxing条码扫描器的Android应用程序。我用这个网站整合了这个功能:

http://damianflannery.wordpress.com/2011/06/13/integrate-zxing-barcode-scanner-into-your-android-app-natively-using-eclipse/

一切运作良好,但如果我说我想用扫描仪打开应用程序,应用程序就会崩溃。

如果我使用已安装的条形码扫描仪,一切正常......

LogCat说:

04-28 19:05:53.566: E/AndroidRuntime(11666): FATAL EXCEPTION: main
04-28 19:05:53.566: E/AndroidRuntime(11666): java.lang.ExceptionInInitializerError
04-28 19:05:53.566: E/AndroidRuntime(11666):    at java.lang.Class.newInstanceImpl(Native Method)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at java.lang.Class.newInstance(Class.java:1319)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at android.app.Instrumentation.newActivity(Instrumentation.java:1023)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1984)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2104)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at android.app.ActivityThread.access$600(ActivityThread.java:132)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1157)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at android.os.Handler.dispatchMessage(Handler.java:99)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at android.os.Looper.loop(Looper.java:137)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at android.app.ActivityThread.main(ActivityThread.java:4575)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at java.lang.reflect.Method.invokeNative(Native Method)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at java.lang.reflect.Method.invoke(Method.java:511)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
04-28 19:05:53.566: E/AndroidRuntime(11666):    at dalvik.system.NativeStart.main(Native Method)
04-28 19:05:53.566: E/AndroidRuntime(11666): Caused by: java.lang.NoClassDefFoundError: com.google.zxing.ResultMetadataType
04-28 19:05:53.566: E/AndroidRuntime(11666):    at com.google.zxing.client.android.CaptureActivity.<clinit>(CaptureActivity.java:101)
04-28 19:05:53.566: E/AndroidRuntime(11666):    ... 15 more

1 个答案:

答案 0 :(得分:2)

博文中的说明至少在一个区域内不正确。

步骤3中的以下段落:

  

该项目目前尚未建成。我们需要将core.jar文件(我们在上一步中生成的)添加到我们的项目中。右键单击ZXing项目 - &gt;属性 - &gt; Java构建路径 - &gt;添加外部罐子 - &gt;导航至并选择core.jar - &gt;打开 - &gt;行。

应为:

  

该项目目前尚未建成。我们需要将core.jar文件(我们在上一步中生成的)添加到我们的项目中。只需将其复制到ZXing项目的libs/目录中即可。

请撤消您根据原始段落进行的手动更改,并将core.jar文件复制到ZXing项目的libs/目录中。