无法解析Landroid的超/支持/ V4 /应用/ FragmentActivity(Unable

2019-07-30 18:17发布

我有一个使用项目WelcomeActivity延伸FragmentActivity 。 我用的是支持库,所以android-support-v4.jar是在libs文件夹中。 当我运行这个程序,不存在任何问题。

不过,我想ActionBarSherlock添加到项目中。 在ABS项目中,我使用actionbarsherlock-plugin-maps-4.1.0.jarandroid-support-v4-r6-googlemaps.jarlibs文件夹中。 在我的应用项目,我添加了ABS库,当我尝试运行应用程序时,会出现此错误:

UNEXPECTED TOP-LEVEL EXCEPTION:
java.lang.IllegalArgumentException: already added: Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoStubImpl;

为了解决这个问题,我删除了android-support-v4.jar从我的应用程序的libs文件夹。 当我现在开始我的应用程序,该应用程序崩溃,与此logcat的:

08-01 18:59:11.182: W/dalvikvm(13338): Unable to resolve superclass of Landroid/support/v4/app/FragmentActivity; (620)
08-01 18:59:11.182: W/dalvikvm(13338): Link of class 'Landroid/support/v4/app/FragmentActivity;' failed
08-01 18:59:11.182: W/dalvikvm(13338): Unable to resolve superclass of Lcom/myapp/welcome/WelcomeActivity; (109)
08-01 18:59:11.182: W/dalvikvm(13338): Link of class 'Lcom/myapp/welcome/WelcomeActivity;' failed
08-01 18:59:11.182: E/dalvikvm(13338): Could not find class 'com.myapp.welcome.WelcomeActivity', referenced from method com.myapp.MainDispatcherActivity.startWelcomeActivity
08-01 18:59:11.182: W/dalvikvm(13338): VFY: unable to resolve const-class 690 (Lcom/myapp/welcome/WelcomeActivity;) in Lcom/myapp/MainDispatcherActivity;
08-01 18:59:11.182: D/dalvikvm(13338): VFY: replacing opcode 0x1c at 0x0002
08-01 18:59:11.182: D/dalvikvm(13338): VFY: dead code 0x0004-000b in Lcom/myapp/MainDispatcherActivity;.startWelcomeActivity ()V
08-01 18:59:11.182: D/AndroidRuntime(13338): Shutting down VM
08-01 18:59:11.182: W/dalvikvm(13338): threadid=1: thread exiting with uncaught exception (group=0x40015560)
08-01 18:59:11.182: E/AndroidRuntime(13338): FATAL EXCEPTION: main
08-01 18:59:11.182: E/AndroidRuntime(13338): java.lang.NoClassDefFoundError: com.myapp.welcome.WelcomeActivity
08-01 18:59:11.182: E/AndroidRuntime(13338):    at com.myapp.MainDispatcherActivity.startWelcomeActivity(MainDispatcherActivity.java:33)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at com.myapp.MainDispatcherActivity.startProperActivity(MainDispatcherActivity.java:26)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at com.myapp.MainDispatcherActivity.onCreate(MainDispatcherActivity.java:19)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at android.app.ActivityThread.access$1500(ActivityThread.java:117)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at android.os.Handler.dispatchMessage(Handler.java:99)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at android.os.Looper.loop(Looper.java:130)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at android.app.ActivityThread.main(ActivityThread.java:3683)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at java.lang.reflect.Method.invokeNative(Native Method)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at java.lang.reflect.Method.invoke(Method.java:507)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:862)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:620)
08-01 18:59:11.182: E/AndroidRuntime(13338):    at dalvik.system.NativeStart.main(Native Method)

我怎样才能解决这个问题?

编辑
我有一个使用相同的ABS库,并运行良好另一个项目。 我不知道我做了什么不同的,或设置有误。

Answer 1:

这似乎是因为我没有在AndroidManifest.xml文件中这一行,在这个错误发生<application>标签:

<uses-library android:name="com.google.android.maps" />


Answer 2:

点击这里

我认为这是在路径 - >配置构建路径生成同样的问题 - >在线订单和出口的“Android的支持,v4.jar”需要进行检查。

希望这是对你有用。



Answer 3:

您已设置为actionbarsherlock库项目的编译器合规? 右键单击库项目,进入属性。 在java编译器,确保合规性设置为1.6。 我有一个类似的问题,并找到了合规性设置为1.5。



Answer 4:

我还没有碰到它自己,但我认为, DOC对ActionBarSherlock说,你需要扩展SherlockFragmentActivity而非FragmentActivity 。 这可能不是问题,但它是一个问题。



文章来源: Unable to resolve superclass of Landroid/support/v4/app/FragmentActivity