2012-05-23 106 views
1

我已将zxing库集成到我的应用程序以扫描QR码。正如我按下一个按钮,启动斑马线扫描活动,应用程序崩溃,并给这些下列消息上的logcat,Android QR码扫描使用Zxing库变成崩溃

05-24 02:17:24.037: E/AndroidRuntime(516): FATAL EXCEPTION: main 

05-24 02:17:24.037: E/AndroidRuntime(516): java.lang.RuntimeException: Unable to start activity 
ComponentInfo{com.code.looknmove/com.google.zxing.client.android.CaptureActivity}: android.content.res.Resources$NotFoundException: File res/xml/preferences.xml from 
drawable resource ID #0x7f050000 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663) 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.app.ActivityThread.access$2300(ActivityThread.java:125) 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.os.Handler.dispatchMessage(Handler.java:99) 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.os.Looper.loop(Looper.java:123) 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.app.ActivityThread.main(ActivityThread.java:4627) 

05-24 02:17:24.037: E/AndroidRuntime(516): at java.lang.reflect.Method.invokeNative(Native Method) 

05-24 02:17:24.037: E/AndroidRuntime(516): at java.lang.reflect.Method.invoke(Method.java:521) 

05-24 02:17:24.037: E/AndroidRuntime(516): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 

05-24 02:17:24.037: E/AndroidRuntime(516): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 

05-24 02:17:24.037: E/AndroidRuntime(516): at dalvik.system.NativeStart.main(Native Method) 

05-24 02:17:24.037: E/AndroidRuntime(516): Caused by: android.content.res.Resources$NotFoundException: File res/xml/preferences.xml from drawable resource ID #0x7f050000 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.content.res.Resources.openRawResourceFd(Resources.java:860) 

05-24 02:17:24.037: E/AndroidRuntime(516): at com.google.zxing.client.android.BeepManager.buildMediaPlayer(BeepManager.java:97) 

05-24 02:17:24.037: E/AndroidRuntime(516): at com.google.zxing.client.android.BeepManager.updatePrefs(BeepManager.java:60) 

05-24 02:17:24.037: E/AndroidRuntime(516): at com.google.zxing.client.android.BeepManager.<init>(BeepManager.java:49) 

05-24 02:17:24.037: E/AndroidRuntime(516): at com.google.zxing.client.android.CaptureActivity.onCreate(CaptureActivity.java:165) 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) 

05-24 02:17:24.037: E/AndroidRuntime(516): ... 11 more 

05-24 02:17:24.037: E/AndroidRuntime(516): Caused by: java.io.FileNotFoundException: This file can not be opened as a file descriptor; it is probably compressed 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.content.res.AssetManager.openNonAssetFdNative(Native Method) 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.content.res.AssetManager.openNonAssetFd(AssetManager.java:426) 

05-24 02:17:24.037: E/AndroidRuntime(516): at android.content.res.Resources.openRawResourceFd(Resources.java:857) 

05-24 02:17:24.037: E/AndroidRuntime(516): ... 17 more 

我无法检测到什么实际问题。因此,需要一些帮助来解决问题,以便发现问题所在。

回答

3

问题是,您已将我们所有android/代码复制并粘贴到您的项目中,并且不太了解您所复制的内容。以这种方式复制我们的应用程序是强烈沮丧。如果您是Android新手,那么尝试重复使用我们的代码可能过于复杂。

  1. 删除您从android/core/
  2. 复制所有的代码添加android-integration/
  3. 实现条码扫描与3行代码按http://code.google.com/p/zxing/wiki/ScanningViaIntent
+0

我只是遵循如何在android应用程序中集成zxing的教程。纽约,我会试一试,希望这能解决我的问题。谢谢。顺便说一句,我已经添加了android项目作为库到我的应用程序并添加core.jar作为库到我的应用程序。我应该删除所有这些? – Junaid

+0

除了'android-integration'外,您不需要添加任何内容来使用Intents。上面的链接是你所需要的。 –

+0

这是要求条码扫描器必须像那样安装。但我的要求是,qrcode扫描必须在不安装的情况下完成。它必须通过使用我的application.is来完成,请给出任何建议这个。 – user1213202

0

我也面临着同样的问题,当我使用的Zxing图书馆和我通过这种技术解决了它

在Manifes中给出启动器活动的完整路径科技档案,如“PacakageName.StartActivity”

1

同样的问题,通过这个链接固定:

michalu zxing barcode

图书馆,用他的斑马线库,你可以从链接在网页底部下载。它适用于我