【问题标题】:How do I debug errors like this in Codenameone?如何在 Codenameone 中调试此类错误?
【发布时间】:2019-09-19 10:18:46
【问题描述】:

我有一个在模拟器上运行良好的应用程序。我做了一个 Android 构建并安装在设备上。现在,一些功能不起作用。我收到的调试日志包含几个此类错误

    [EDT] 0:23:31,275 - Exception in Ziemozi version 1.0
[EDT] 0:23:31,275 - OS and
[EDT] 0:23:31,275 - Error java.lang.NullPointerException: Attempt to invoke virtual method 'void com.codename1.ab.l.n(int)' on a null object reference
[EDT] 0:23:31,276 - Current Form null
[EDT] 0:23:31,276 - Exception: java.lang.NullPointerException - Attempt to invoke virtual method 'void com.codename1.ab.l.n(int)' on a null object reference
java.lang.NullPointerException: Attempt to invoke virtual method 'void com.codename1.ab.l.n(int)' on a null object reference
    at com.codename1.g.j.a(InfiniteScrollAdapter.java:156)
    at com.codename1.g.j.a(InfiniteScrollAdapter.java:143)
    at com.codename1.ab.aa.t(InfiniteContainer.java:177)
    at com.codename1.ab.aa$5.run(InfiniteContainer.java:193)
    at com.codename1.ab.r.n(Display.java:1298)
    at com.codename1.ab.r.l(Display.java:1242)
    at com.codename1.ab.r.k(Display.java:1130)
    at com.codename1.ab.ao.run(RunnableWrapper.java:120)
    at com.codename1.impl.b$1.run(CodenameOneThread.java:60)

我该如何调试它或者它是如何出现的,以便我可以修复它?

【问题讨论】:

  • com.codename1.ab.l.n 被混淆了。也许您可以获得一个日志,其中包含该方法的实际名称,试图在您的 Android 设备上测试“调试”版本而不是“发布”版本(请参阅“代号 One Settings”、“Android 设置”、“生成构建”) .

标签: codenameone


【解决方案1】:

InfiniteContainer 返回的组件之一为空时,就会发生这种情况。例如。你做了类似的事情:

public Component[] fetchComponents(int index, int amount);
    // ... 
    return cmps;
}

cmps 是一个大于 0 但其中一个元素为 null 的有效数组。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-17
    • 2016-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多