【问题标题】:replicating the android activity life cicle on the AVD在 AVD 上复制 android 活动生命周期
【发布时间】:2014-09-20 12:11:43
【问题描述】:

我尝试编写我的第一个严肃的 android 应用并在 google play 上列出它。

当我第一次启动我的应用程序时,一切正常。当我切换到另一个应用程序,然后当我尝试调整我的应用程序时,我收到以下编码错误。我认为我正在使用的 mp3 文件的路径有问题。我认为这是相关的应用程序活动生命周期。您能告诉我如何在 AVD 上模拟活动生命周期吗?

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.random12.soundtracks/com.random12.soundtracks.MenuActivity}: java.lang.IndexOutOfBoundsException: Invalid index 20, size is 7
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2078)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2103)
at android.app.ActivityThread.access$600(ActivityThread.java:137)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1211)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4839)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:609)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IndexOutOfBoundsException: Invalid index 20, size is 7
at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:251)
at java.util.ArrayList.get(ArrayList.java:304)
at com.random12.soundtracks.MenuActivity.onCreate(Unknown Source)
at android.app.Activity.performCreate(Activity.java:5010)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2042)
... 11 more

我在编写 java 代码和使用基于 Eclipse 的 IDE(更具体地说是 adt 包)方面非常陌生

【问题讨论】:

    标签: android eclipse adt android-lifecycle


    【解决方案1】:

    事情就是这样。你这样说: “当我必须处理活动生命周期时,我认为我正在使用的 mp3 文件的路径有问题。”

    您绝对不需要假设。我认为您需要尝试更多地探索堆栈跟踪,因为堆栈跟踪会准确地告诉您出了什么问题,并且通常会告诉您哪里出了问题。查看您从崩溃中发布的第一个链接。 :

    java.lang.RuntimeException:无法启动活动 ComponentInfo{com.random12.soundtracks/com.random12.soundtracks.MenuActivity}:java.lang.IndexOutOfBoundsException:无效索引 20,大小为 7

    当您看到运行时异常时,请继续阅读。我们无法启动活动 - 所以它可能与早期的 onCreate 方法之一有关。继续 - “om.random12.soundtracks/com.random12.soundtracks.MenuActivity” 它在您的 MenuActivity 类中。最后,我们谈到了问题的实质: java.lang.IndexOutOfBoundsException:索引 20 无效,大小为 7

    当您尝试打开或重新打开 MenuActivity 类时,您正在尝试访问数组中的元素或某种不存在的索引数据结构! arraything 中只有 7 个元素,您正在尝试访问 #20。去检查你的代码,看看你是否能找出问题所在。或者把它的一部分发到这里,我看看能不能帮忙。

    AVD 以与普通设备相同的方式模拟事件。您仍然可以让应用程序在后台运行,或者关闭然后重新打开。

    【讨论】:

    • 感谢您的宝贵而详细的回复。太棒了。不幸的是,我只在谷歌上得到这个错误,当我在真实设备上运行应用程序时播放。我无法在模拟器上复制这种类型的行为。再次感谢!!!
    猜你喜欢
    • 1970-01-01
    • 2013-01-13
    • 2011-12-18
    • 1970-01-01
    • 1970-01-01
    • 2014-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多