0

全部,

我们有一个适用于平板电脑的应用程序,在未部署为签名应用程序时可以正常工作。我可以将应用程序从 Eclipse 运行到三星平板电脑,一切正常。当我创建一个签名的应用程序时,我收到以下错误(底部的堆栈跟踪):

问题:为什么要这样做——我不能制作一个签名的应用程序给我团队中的其他人进行测试——也不能给客户。这让我发疯 - 它说它找不到的 Fragment 在那里 - 并注意我正在使用最小 sdk 级别为 10 的兼容性 jar。

该错误没有任何意义——如果 XML 有问题或 Fragment 类不存在,则它永远无法从 Eclipse 以开发人员模式在我的表上运行。我很困惑 - 结果它停止了我们的开发工作......

哦,只是为了记录:

Eclipse 3.6.2 Mac OS X 10.7 Lion 三星 Galaxy 平板电脑 10.1 与 Android 版本 3.1

任何指针将不胜感激......

这是清单的相关部分:

<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.twoguysmedia.puzzleSliderTab"
android:versionCode="2"
android:versionName="1.1.20"
android:installLocation="auto">
<uses-sdk
    android:minSdkVersion="4"
    android:targetSdkVersion="11" />

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CAMERA" />   
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.INTERNET" />    
<uses-permission android:name="android.permission.READ_PHONE_STATE" />    
<uses-permission android:name="android.permission.SET_WALLPAPER" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.SEND_SMS"/>

...

这是异常堆栈跟踪:

08-07 07:03:54.990: 错误/AndroidRuntime(7937): 致命异常: main 08-07 07:03:54.990: 错误/AndroidRuntime(7937): java.lang.RuntimeException: 无法启动活动 ComponentInfo{com. twoguysmedia.puzzleSliderTab/com.twoguysmedia.puzzleSliderTab.PuzzleSliderTabListActivity}:android.view.InflateException:二进制 XML 文件第 8 行:错误膨胀类片段 08-07 07:03:54.990:错误/AndroidRuntime(7937):在 android.app .ActivityThread.performLaunchActivity(ActivityThread.java:1751) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1767) 08-07 07:03:54.990 : ERROR/AndroidRuntime(7937): at android.app.ActivityThread.access$1500(ActivityThread.java:122) 08-07 07:03:54.990: ERROR/AndroidRuntime(7937): at android.app.ActivityThread$H.handleMessage (活动线程。java:1005) 08-07 07:03:54.990: ERROR/AndroidRuntime(7937): at android.os.Handler.dispatchMessage(Handler.java:99) 08-07 07:03:54.990: ERROR/AndroidRuntime(7937) : 在 android.os.Looper.loop(Looper.java:132) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): 在 android.app.ActivityThread.main(ActivityThread.java:4028) 08-07 07:03:54.990: ERROR/AndroidRuntime(7937): at java.lang.reflect.Method.invokeNative(Native Method) 08-07 07:03:54.990: ERROR/AndroidRuntime(7937): at java.lang.reflect。 Method.invoke(Method.java:491) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:844) 08-07 07:03:54.990: ERROR/AndroidRuntime(7937): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602) 08-07 07:03:54.990: ERROR/AndroidRuntime(7937): at dalvik 。系统。NativeStart.main(Native Method) 08-07 07:03:54.990: ERROR/AndroidRuntime(7937): Caused by: android.view.InflateException: Binary XML file line #8: Error inflating class fragment 08-07 07:03: 54.990: 错误/AndroidRuntime(7937): 在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:688) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): 在 android.view.LayoutInflater.rInflate(LayoutInflater .java:724) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): 在 android.view.LayoutInflater.inflate(LayoutInflater.java:479) 08-07 07:03:54.990: 错误/AndroidRuntime(7937 ): 在 android.view.LayoutInflater.inflate(LayoutInflater.java:391) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): 在 android.view.LayoutInflater.inflate(LayoutInflater.java:347) 08- 07 07:03:54.990:错误/AndroidRuntime(7937):在 com.android.internal.policy.impl。PhoneWindow.setContentView(PhoneWindow.java:242) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): 在 android.app.Activity.setContentView(Activity.java:1780) 08-07 07:03:54.990:错误/AndroidRuntime(7937): 在 com.twoguysmedia.puzzleSliderTab.PuzzleSliderTabListActivity.onCreate(未知来源) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java: 1048) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1715) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): 。 .. 11 more 08-07 07:03:54.990: ERROR/AndroidRuntime(7937): Caused by: android.support.v4.app.o: Unable to instance fragment com.twoguysmedia.puzzleSliderTab.PuzzleSliderTabListFragment: 确保类名存在, 是公开的,并且有一个空的构造函数,它是 public 08-07 07:03:54.990: ERROR/AndroidRuntime(7937): at android.support.v4.app.ua(Unknown Source) 08-07 07:03:54.990: ERROR/AndroidRuntime (7937):在 android.support.v4.app.ua(未知来源)08-07 07:03:54.990:错误/AndroidRuntime(7937):在 android.support.v4.app.FragmentActivity.onCreateView(未知来源) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): 在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:660) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): ... 20 更多 08-07 07:03:54.990: ERROR/AndroidRuntime(7937): Caused by: java.lang.ClassNotFoundException: com.twoguysmedia.puzzleSliderTab.PuzzleSliderTabListFragment in loader dalvik.system.PathClassLoader[/data/app/com.twoguysmedia .puzzleSliderTab-1.apk] 08-07 07:03:54.990: 错误/AndroidRuntime(7937):在 dalvik.system.PathClassLoader.findClass(PathClassLoader.java:251) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): 在 java.lang.ClassLoader.loadClass(ClassLoader.java:540) 08-07 07 :03:54.990: ERROR/AndroidRuntime(7937): at java.lang.ClassLoader.loadClass(ClassLoader.java:500) 08-07 07:03:54.990: ERROR/AndroidRuntime(7937): ... 24 更多 08- 07 07:03:55.000: ERROR/android.os.Debug(286): Dumpstate > /data/log/dumpstate_app_error 08-07 07:03:55.000: WARN/ActivityManager(286): 强制完成活动 com.twoguysmedia.puzzleSliderTab /.PuzzleSliderTabListActivity500) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): ... 24 更多 08-07 07:03:55.000: 错误/android.os.Debug(286): Dumpstate > /data/log/ dumpstate_app_error 08-07 07:03:55.000: WARN/ActivityManager(286): 强制完成活动 com.twoguysmedia.puzzleSliderTab/.PuzzleSliderTabListActivity500) 08-07 07:03:54.990: 错误/AndroidRuntime(7937): ... 24 更多 08-07 07:03:55.000: 错误/android.os.Debug(286): Dumpstate > /data/log/ dumpstate_app_error 08-07 07:03:55.000: WARN/ActivityManager(286): 强制完成活动 com.twoguysmedia.puzzleSliderTab/.PuzzleSliderTabListActivity

4

1 回答 1

0

对于那些想知道这是如何解决的人 - 原来这是一个 minSDK 问题 - 因为最小 SDK 小于编译的 SDK 并且设备小于编译的 SDK,它允许安装应用程序,但不能运行 -因此转储。解决方案是回到项目并在它被部署到的设备级别上编译它——这有点破坏了整个 minSDK 的东西——这不是应该解决这个问题吗?

现在一切正常,无论如何...

于 2011-08-23T17:01:06.250 回答