2012-01-12 14 views
0

我正在the barcode scanner example上工作,并已在仿真器上正常工作。但是当我将它加载到我的机器人2上时,当我单击“扫描代码”按钮时它崩溃。下面是logcat中的错误。我错过了什么?致命异常:java.lang.RuntimeException。条码扫描器代码在设备上崩溃,在仿真器上工作

01-12 14:40:36.200 2962 2962 E AndroidRuntime: FATAL EXCEPTION: main 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.mds.tutorial.ca/com.google.zxing.client.android.CaptureActivity}: java.lang.ClassNotFoundException: com.google.zxing.client.android.CaptureActivity in loader dalvik.system.PathClassLoader[/data/app/com.mds.tutorial.ca-1.apk] 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1618) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1716) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at android.app.ActivityThread.access$1500(ActivityThread.java:124) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:968) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at android.os.Looper.loop(Looper.java:123) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:3806) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at java.lang.reflect.Method.invokeNative(Native Method) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at java.lang.reflect.Method.invoke(Method.java:507) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at dalvik.system.NativeStart.main(Native Method) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: com.google.zxing.client.android.CaptureActivity in loader dalvik.system.PathClassLoader[/data/app/com.mds.tutorial.ca-1.apk] 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at java.lang.ClassLoader.loadClass(ClassLoader.java:551) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at android.app.Instrumentation.newActivity(Instrumentation.java:1021) 
01-12 14:40:36.200 2962 2962 E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1610) 

谢谢。

这里是我的清单:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.mds.tutorial.ca" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk android:minSdkVersion="7" /> 

    <supports-screens 
     android:largeScreens="true" 
     android:normalScreens="true" 
     android:smallScreens="true" 
     android:xlargeScreens="true" 
     android:resizeable="true" 
     android:anyDensity="true" 
     /> 

    <uses-permission android:name="android.permission.CAMERA" /> 
    <uses-permission android:name="android.permission.VIBRATE" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.RECEIVE_SMS" /> 
    <uses-permission android:name="android.permission.RECORD_AUDIO" /> 
    <uses-permission android:name="android.permission.RECORD_VIDEO"/> 
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> 
    <uses-permission android:name="android.permission.READ_CONTACTS" /> 
    <uses-permission android:name="android.permission.WRITE_CONTACTS" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.GET_ACCOUNTS" /> 
    <uses-permission android:name="android.permission.BROADCAST_STICKY" /> 

    <uses-feature android:name="android.hardware.camera" /> 
    <uses-feature android:name="android.hardware.camera.autofocus" /> 

    <application android:debuggable="true" android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" > 
     <activity android:configChanges="orientation|keyboardHidden" android:name=".CaActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity android:name="com.phonegap.DroidGap" android:label="@string/app_name" 
        android:configChanges="orientation|keyboardHidden"> 
      <intent-filter> 
      </intent-filter> 
     </activity> 
      <!-- ZXing activities --> 
    <activity android:name="com.google.zxing.client.android.CaptureActivity" android:screenOrientation="landscape" android:configChanges="orientation|keyboardHidden" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:windowSoftInputMode="stateAlwaysHidden"> 
     <intent-filter> 
     <action android:name="com.phonegap.plugins.barcodescanner.SCAN"/> 
     <category android:name="android.intent.category.DEFAULT"/> 
     </intent-filter> 
    </activity> 
    <activity android:name="com.google.zxing.client.android.encode.EncodeActivity" android:label="@string/share_name"> 
     <intent-filter> 
     <action android:name="com.phonegap.plugins.barcodescanner.ENCODE"/> 
     <category android:name="android.intent.category.DEFAULT"/> 
     </intent-filter>    
    </activity> 
    </application> 

</manifest> 

回答

1

看来的Dalvik无法找到你的班级。确保您的启动活动包定义在清单文件中是正确的。如果正确,我会完成从手机上卸载应用程序并重新安装。

+0

一切似乎都是正确的,我在调试模式下连接到手机时运行此操作,因此无需安装即可快速查看我的更改。我已在最新的问题中发布了我的清单。 – mugetsu 2012-01-13 00:59:21

+0

这是什么课com.xzing ....?这是你的班级吗?我知道你在调试模式下这样做,你仍然可以完成应用程序的卸载并重新安装。只是为了确保你有新的版本。 – kosa 2012-01-13 01:11:03

+0

xzing是一个谷歌条码处理库。 http://code.google.com/p/zxing/ – mugetsu 2012-01-13 18:33:52

相关问题