5

我最近更新了 Android 3.2 SDK,从那以后我无法运行我的应用程序,没有它立即强制退出并给出“无法实例化活动 ComponentInfo”错误。我已经检查了有关该主题的所有帖子,并且相信我已经涵盖了导致此错误的所有常见问题。我相信这可能与集成的谷歌地图有关,但在更新之前它工作正常。这是 LogCat 和清单。主要活动课程非常大,所以我想避免发布。

05-16 14:08:16.313: I/dalvikvm(2880): Failed resolving 

Lcnp/apps/dronecontrol/DroneControlActivity; interface 112 'Lslickdevlabs/apps/usb2seriallib/AdapterConnectionListener;'
05-16 14:08:16.313: W/dalvikvm(2880): Link of class 'Lcnp/apps/dronecontrol/DroneControlActivity;' failed
05-16 14:08:16.313: D/AndroidRuntime(2880): Shutting down VM
05-16 14:08:16.313: W/dalvikvm(2880): threadid=1: thread exiting with uncaught exception (group=0x40239760)
05-16 14:08:16.313: E/AndroidRuntime(2880): FATAL EXCEPTION: main
05-16 14:08:16.313: E/AndroidRuntime(2880): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{cnp.apps.dronecontrol/cnp.apps.dronecontrol.DroneControlActivity}: java.lang.ClassNotFoundException: cnp.apps.dronecontrol.DroneControlActivity in loader dalvik.system.PathClassLoader[/system/framework/com.google.android.maps.jar:/data/app/cnp.apps.dronecontrol-2.apk]
05-16 14:08:16.313: E/AndroidRuntime(2880):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1739)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1831)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at android.app.ActivityThread.access$500(ActivityThread.java:122)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1024)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at android.os.Handler.dispatchMessage(Handler.java:99)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at android.os.Looper.loop(Looper.java:132)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at android.app.ActivityThread.main(ActivityThread.java:4123)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at java.lang.reflect.Method.invokeNative(Native Method)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at java.lang.reflect.Method.invoke(Method.java:491)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at dalvik.system.NativeStart.main(Native Method)
05-16 14:08:16.313: E/AndroidRuntime(2880): Caused by: java.lang.ClassNotFoundException: cnp.apps.dronecontrol.DroneControlActivity in loader dalvik.system.PathClassLoader[/system/framework/com.google.android.maps.jar:/data/app/cnp.apps.dronecontrol-2.apk]
05-16 14:08:16.313: E/AndroidRuntime(2880):     at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:251)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at java.lang.ClassLoader.loadClass(ClassLoader.java:540)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at java.lang.ClassLoader.loadClass(ClassLoader.java:500)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at android.app.Instrumentation.newActivity(Instrumentation.java:1022)
05-16 14:08:16.313: E/AndroidRuntime(2880):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1730)
05-16 14:08:16.313: E/AndroidRuntime(2880):     ... 11 more
05-16 14:13:50.023: I/dalvikvm(2918): Failed resolving Lcnp/apps/dronecontrol/DroneControlActivity; interface 112 'Lslickdevlabs/apps/usb2seriallib/AdapterConnectionListener;'
05-16 14:13:50.023: W/dalvikvm(2918): Link of class 'Lcnp/apps/dronecontrol/DroneControlActivity;' failed
05-16 14:13:50.023: D/AndroidRuntime(2918): Shutting down VM
05-16 14:13:50.023: W/dalvikvm(2918): threadid=1: thread exiting with uncaught exception (group=0x40239760)
05-16 14:13:50.023: E/AndroidRuntime(2918): FATAL EXCEPTION: main
05-16 14:13:50.023: E/AndroidRuntime(2918): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{cnp.apps.dronecontrol/cnp.apps.dronecontrol.DroneControlActivity}: java.lang.ClassNotFoundException: cnp.apps.dronecontrol.DroneControlActivity in loader dalvik.system.PathClassLoader[/system/framework/com.google.android.maps.jar:/data/app/cnp.apps.dronecontrol-1.apk]
05-16 14:13:50.023: E/AndroidRuntime(2918):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1739)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1831)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at android.app.ActivityThread.access$500(ActivityThread.java:122)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1024)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at android.os.Handler.dispatchMessage(Handler.java:99)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at android.os.Looper.loop(Looper.java:132)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at android.app.ActivityThread.main(ActivityThread.java:4123)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at java.lang.reflect.Method.invokeNative(Native Method)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at java.lang.reflect.Method.invoke(Method.java:491)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at dalvik.system.NativeStart.main(Native Method)
05-16 14:13:50.023: E/AndroidRuntime(2918): Caused by: java.lang.ClassNotFoundException: cnp.apps.dronecontrol.DroneControlActivity in loader dalvik.system.PathClassLoader[/system/framework/com.google.android.maps.jar:/data/app/cnp.apps.dronecontrol-1.apk]
05-16 14:13:50.023: E/AndroidRuntime(2918):     at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:251)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at java.lang.ClassLoader.loadClass(ClassLoader.java:540)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at java.lang.ClassLoader.loadClass(ClassLoader.java:500)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at android.app.Instrumentation.newActivity(Instrumentation.java:1022)
05-16 14:13:50.023: E/AndroidRuntime(2918):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1730)
05-16 14:13:50.023: E/AndroidRuntime(2918):     ... 11 more

这是清单,我相信错误就在这里,我更新 SDK 后没有更改任何代码,它刚刚开始崩溃

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="cnp.apps.dronecontrol"
    android:versionCode="7"
      android:versionName="1.6">
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
    <uses-sdk android:minSdkVersion="13" />
    <uses-feature android:name="android.hardware.usb.host" android:required="true"></uses-feature>

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <uses-library android:name="com.google.android.maps" />
        <activity android:name=".DroneControlActivity"
                  android:windowSoftInputMode="adjustPan|stateHidden"
                  android:label="@string/app_name"
                  android:launchMode="singleTask" android:screenOrientation="landscape">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

            <intent-filter>
                <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
            </intent-filter>

            <meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"
                android:resource="@xml/device_filter" />
        </activity>
        <activity android:name=".MenuHelper"
                  android:label="@string/app_name" />

    </application>
</manifest>
4

1 回答 1

9

可怕的 ClassNotFoundException。您必须将第三方库放在“libs”文件夹中并重新引用它们(右键单击、属性、Java 构建路径、库、添加 Jar...)。

于 2012-05-16T18:33:51.607 回答