【问题标题】:Android app running on Emulator but not on device_getting stackoverflow error在模拟器上运行但不在 device_getting stackoverflow 错误上的 Android 应用程序
【发布时间】:2013-08-14 02:50:21
【问题描述】:

当我尝试打开一个 tabactivity 时,它在模拟器上运行良好,但在真实设备上却没有。 清单文件中的 min 和 max sdk,如图所示

    android:minSdkVersion="8"

    android:targetSdkVersion="17"

我的设备是 4.1.1 版本的三星平板电脑

08-13 17:53:42.034:E/AndroidRuntime(22602):致命异常:主要

08-13 17:53:42.034: E/AndroidRuntime(22602): java.lang.StackOverflowError

08-13 17:53:42.034: E/AndroidRuntime(22602): 在 android.content.res.Resources.obtainAttributes(Resources.java:1393)

08-13 17:53:42.034: E/AndroidRuntime(22602): 在 android.graphics.drawable.StateListDrawable.inflate(StateListDrawable.java:117)

08-13 17:53:42.034: E/AndroidRuntime(22602): 在 android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:881)

08-13 17:53:42.034: E/AndroidRuntime(22602): 在 android.graphics.drawable.Drawable.createFromXml(Drawable.java:818) 08-13 17:53:42.034: E/AndroidRuntime(22602): 在 android.content.res.Resources.loadDrawable(Resources.java:1948)

08-13 17:53:42.034: E/AndroidRuntime(22602): 在 android.content.res.Resources.getDrawable(Resources.java:672)

08-13 17:53:42.034: E/AndroidRuntime(22602): 在 android.graphics.drawable.StateListDrawable.inflate(StateListDrawable.java:173)

08-13 17:53:42.034: E/AndroidRuntime(22602): 在 android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:881)

08-13 17:53:42.034: E/AndroidRuntime(22602): 在 android.graphics.drawable.Drawable.createFromXml(Drawable.java:818)

08-13 17:53:42.034: E/AndroidRuntime(22602): 在 android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:881)

08-13 17:53:42.034: E/AndroidRuntime(22602): 在 android.graphics.drawable.Drawable.createFromXml(Drawable.java:818)

08-13 17:53:42.034:E/AndroidRuntime(22602):在 android.content.res.Resources

【问题讨论】:

    标签: android android-emulator stack


    【解决方案1】:

    TabActivity 在 API 13 中已被弃用,因此不能保证在 Android 3.2 或更高版本上正常工作。考虑改用Fragments

    当递归函数没有正确的基本情况时,通常会发生堆栈溢出错误。换句话说,递归函数将继续调用自己,从而将它的变量添加到堆栈中,直到堆栈空间用完。如果您使用任何递归函数,请确保您有适当的基本情况。如果您没有使用任何递归函数,则可能是已弃用的 TabActivity 类中出现了问题。

    【讨论】:

    • 我的活动中没有递归函数。它发生在已弃用的选项卡活动中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多