Java Android平台捆绑包类遇到内部数组越界异常
我在Android应用程序中遇到一个数组越界错误,我不知道如何解决这个问题。似乎所有相关检查都已完成 我的代码如下:Java Android平台捆绑包类遇到内部数组越界异常,java,android,android-bundle,Java,Android,Android Bundle,我在Android应用程序中遇到一个数组越界错误,我不知道如何解决这个问题。似乎所有相关检查都已完成 我的代码如下: private final Handler handler = new Handler() { @Override public void handleMessage(android.os.Message msg) { if (msg.what == GLES20VideoRenderer.MESSAGE_TIMING) {
private final Handler handler = new Handler() {
@Override
public void handleMessage(android.os.Message msg) {
if (msg.what == GLES20VideoRenderer.MESSAGE_TIMING) {
Bundle data = msg.getData();
if ((data != null) && !data.isEmpty()) {
if (data.containsKey("utc_timestamp_ms")) {
updateTimeDisplay(data.getLong("utc_timestamp_ms"));
}
if (data.containsKey("streaming")) {
if (overlayBusy != null) {
if (overlayBusy.getVisibility() != View.INVISIBLE) {
overlayBusy.setVisibility(View.INVISIBLE);
}
}
}
}
}
}
};
我得到以下错误:
10-30 07:53:07.923: E/AndroidRuntime(19371): java.lang.ArrayIndexOutOfBoundsException: length=0; index=0
10-30 07:53:07.923: E/AndroidRuntime(19371): at android.util.ArrayMap.indexOf(ArrayMap.java:113)
10-30 07:53:07.923: E/AndroidRuntime(19371): at android.util.ArrayMap.get(ArrayMap.java:366)
10-30 07:53:07.923: E/AndroidRuntime(19371): at android.os.Bundle.getLong(Bundle.java:1029)
10-30 07:53:07.923: E/AndroidRuntime(19371): at android.os.Bundle.getLong(Bundle.java:1016)
任何帮助都将不胜感激。
这可能是由OST中的潜在竞争条件引起的,这看起来确实很奇怪——乍一看,问题似乎出在平台代码中,而不是您的代码中。看看你能不能把包裹倒出来。也可以在其他设备上尝试。上面的错误表明您的阵列中没有任何东西UpdateMedisPlay()方法看起来像什么?未经编辑的第三方编辑隐藏了问题的真实性质。这不是一般的“索引越界”问题,因为虽然这最终会发生,但它发生在Android平台代码中,该代码已被传递给一个已验证包含请求密钥的捆绑对象,而不是数组。