我已将Zxing整合为库并在我的应用程序中使用。我打电话给
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
intent.putExtra("SCAN_FORMATS", "CODE_39");
intent.putExtra("SAVE_HISTORY", false);
startActivityForResult(intent, 0);
它适用于大多数设备,但在某些设备上如HTC Desire,GT-I9000。我收到以下错误。
java.lang.RuntimeException:无法启动活动 ComponentInfo {com.Armacell.login / com.google.zxing.client.android.CaptureActivity}: android.view.InflateException:二进制XML文件行#25:错误 在com .google.zxing.client.android.ViewfinderView上升级 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 在android.app.ActivityThread.access $ 2300(ActivityThread.java:125)at android.app.ActivityThread $ H.handleMessage(ActivityThread.java:2033) 在android.os.Handler.dispatchMessage(Handler.java:99)at android.os.Looper.loop(Looper.java:123)at android.app.ActivityThread.main(ActivityThread.java:4627)at java.lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method.java:521)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:871) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:629)at dalvik.system.NativeStart.main(Native方法)引起: android.view.InflateException:二进制XML文件行#25:错误 在com .google.zxing.client.android.ViewfinderView上升级 android.view.LayoutInflater.createView(LayoutInflater.java:513)at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:565) 在android.view.LayoutInflater.rInflate(LayoutInflater.java:618)at android.view.LayoutInflater.inflate(LayoutInflater.java:407)at android.view.LayoutInflater.inflate(LayoutInflater.java:320)at android.view.LayoutInflater.inflate(LayoutInflater.java:276)at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:200) 在android.app.Activity.setContentView(Activity.java:1647)at com.google.zxing.client.android.CaptureActivity.onCreate(CaptureActivity.java:160) 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) ... 11更多引起:java.lang.reflect.InvocationTargetException at com.google.zxing.client.android.ViewfinderView。(ViewfinderView.java:62) 在java.lang.reflect.Constructor.constructNative(Native Method)at java.lang.reflect.Constructor.newInstance(Constructor.java:446)at android.view.LayoutInflater.createView(LayoutInflater.java:500)... 21 更多引起:android.content.res.Resources $ NotFoundException: 资源不是Drawable(颜色或路径): TypedValue {t = 0x1 / d = 0x7f070012 a = -1 r = 0x7f070012} at android.content.res.Resources.loadDrawable(Resources.java:1681)at android.content.res.TypedArray.getDrawable(TypedArray.java:601)at at android.view.View。(View.java:1895)at android.view.View。(View.java:1844)... 25更多
我也在zxing source的Capture.xml文件中收到此警告 - “无法实例化以下类: - com.google.zxing.client.android.ViewfinderView “
我要求所有人在这种情况下提供帮助。在此先感谢。
答案 0 :(得分:2)
这是完全错误的 - 您在我们的应用中包含了我们的Android代码。没有必要,也没有鼓励,你也没有正确完成。请删除您从android/
复制到项目中的所有代码。
(事实上,我们强烈反对你不像你那样复制和粘贴。)
相反,您应该只使用android-integration
中的代码而不是其他内容。你甚至没有真正使用积分器代码!
答案 1 :(得分:1)
我自己有解决方案。
问题在于文化。我更改了默认的“值”。将“values-de”变为“值”。这使得Zxing在拥有德国文化的设备上崩溃。
我不知道它为什么会起作用,但现在我将英语作为默认设置并且现在正在运行:)