Android 试图通过v4兼容性使用DialogFragments会导致NoClassDefFoundErrors

Android 试图通过v4兼容性使用DialogFragments会导致NoClassDefFoundErrors,android,noclassdeffounderror,android-dialogfragment,android-fragmentactivity,Android,Noclassdeffounderror,Android Dialogfragment,Android Fragmentactivity,问候和问候 短版本:我试图在我的Android应用程序中使用DialogFragment,它的minSkdVersion为8(Android 2.2)。为了使用它们,我必须能够调用“getSupportFragmentManager()”。为了做到这一点,我尝试将调用活动更改为FragmentActivity,这允许getSupportFragmentManager()在运行时解析,但当尝试在运行时创建该意图时,我得到一个NoClassDefFoundError,因为应用程序无法解析它的上游部分

问候和问候

短版本:我试图在我的Android应用程序中使用DialogFragment,它的minSkdVersion为8(Android 2.2)。为了使用它们,我必须能够调用“getSupportFragmentManager()”。为了做到这一点,我尝试将调用活动更改为FragmentActivity,这允许getSupportFragmentManager()在运行时解析,但当尝试在运行时创建该意图时,我得到一个NoClassDefFoundError,因为应用程序无法解析它的上游部分

W/dalvikvm(333):无法解析超类

在这种情况下,如何从一个简单的活动调用getSupportFragmentManager(),而不使该活动成为FragmentActivity(它无法工作)?或者我需要将该活动变成一个片段活动,但我需要进行一些其他更改才能使其正常工作

记录在案:我已经将android-support-v4.jar添加到项目中了(否则,我将无法编译)


提前感谢您的帮助。

查看支持库的示例。为了支持这些特性,它们从“碎片活动”扩展而来

他们还写道,为了使用支持库,您必须对其进行扩展:

碎片活动:

“用于希望使用基于支持的片段和加载程序API的活动的基类

当使用这个类而不是新平台的内置片段和加载程序支持时,必须使用 分别使用getSupportFragmentManager()和getSupportLoaderManager()方法访问这些功能。“


请看支持库的示例。为了支持这些特性,它们从“碎片活动”扩展而来

他们还写道,为了使用支持库,您必须对其进行扩展:

碎片活动:

“用于希望使用基于支持的片段和加载程序API的活动的基类

当使用这个类而不是新平台的内置片段和加载程序支持时,必须使用 分别使用getSupportFragmentManager()和getSupportLoaderManager()方法访问这些功能。“



因为FragmentActivity是找不到的类,我想我知道问题出在哪里了。您确定您的兼容库已包含在apk中吗?您可以使用dex2jar来检查这一点。似乎您需要将库移动到
libs
文件夹,以便将它们包含在android工具的更新版本中。

由于FragmentActivity是一个无法找到的类,我想我知道问题所在。您确定您的兼容库已包含在apk中吗?您可以使用dex2jar来检查这一点。似乎您需要将您的库移动到
libs
文件夹,以便将它们包含在android工具的更新版本中。

完整的日志内容是什么
W/dalvikvm(333):无法解析超类…
没有太大帮助。04-25 08:53:14.298:W/dalvikvm(333):无法解析Lcom/../android/../ActiveTracking的超类;(23)啊,所以FragmentActivity是找不到的类。您确定您的兼容库已包含在apk中吗?您可以使用dex2jar来检查这一点。似乎你需要将你的库移动到
libs
文件夹中,才能将它们包含在android工具的更新版本中。的确!谢谢你,德蒙。你能帮我个大忙吗?你能把这个作为答案贴出来吗?这样我就可以给你评分了^_^我喜欢帮别人的忙,特别是当他们帮我的时候:)完整的日志内容是什么
W/dalvikvm(333):无法解析超类…
没有太大帮助。04-25 08:53:14.298:W/dalvikvm(333):无法解析Lcom/../android/../ActiveTracking的超类;(23)啊,所以FragmentActivity是找不到的类。您确定您的兼容库已包含在apk中吗?您可以使用dex2jar来检查这一点。似乎你需要将你的库移动到
libs
文件夹中,才能将它们包含在android工具的更新版本中。的确!谢谢你,德蒙。你能帮我个大忙吗?你能把这个作为答案贴出来吗?这样我就可以给你评分了^_^我喜欢帮别人的忙,特别是当他们帮我的时候:)我确实在用这个,androiddeveloper。这就是为什么我会遇到我最初提到的NoClassDefFoundError。我知道-这就是为什么我给你提供了要阅读的链接(和引用)。它说,为了使用API,您需要扩展这个类……我确实在使用它,androiddeveloper。这就是为什么我会遇到我最初提到的NoClassDefFoundError。我知道-这就是为什么我给你提供了要阅读的链接(和引用)。它说你需要扩展这个类才能使用API…谢谢,DMON。我感谢你的帮助。我就是这么做的,现在开始工作了。谢谢,德蒙。我感谢你的帮助。我就是这么做的,现在它正在发挥作用。