【问题标题】:How do I fix a ReferenceError in my KivyMD app?如何修复 KivyMD 应用程序中的 ReferenceError?
【发布时间】:2020-07-25 19:53:25
【问题描述】:

我创建了一个 KivyMD 应用并尝试在 Android 设备上运行它。该应用程序是一款名为 COVID Killers 的游戏。有开始屏幕、游戏屏幕和游戏结束屏幕。在开始屏幕中,您开始游戏。在游戏画面中,有病毒,你必须用肥皂条击中它们。在游戏结束屏幕中有一个游戏结束 GIF,您可以单击一个按钮重新开始游戏。在 Android 设备上,当我扔一块肥皂时,肥皂会接触到病毒,但一旦接触到病毒,应用程序就会崩溃。当我还在编写代码时,我已经发布了关于这个应用程序的另一个问题KivyMD MDFlatButton not clickable & Kivy ScreenManager not working。但我最终修复了该应用程序。因此,由于应用程序在 Android 上崩溃,我查看了 ADB 日志,并看到了以下回溯:

07-25 14:24:01.802 14777 14870 I python  :  Traceback (most recent call last):
07-25 14:24:01.802 14777 14870 I python  :    File "~/MEGAsync/KivyLab/KivyMD/COVIDKillers/.buildozer/android/app/main.py", line 427, in <module>
07-25 14:24:01.803 14777 14870 I python  :    File "~/MEGAsync/KivyLab/KivyMD/COVIDKillers/.buildozer/android/platform/build-arm64-v8a/build/python-installs/COVIDKillers/kivy/app.py", line 855, in run
07-25 14:24:01.803 14777 14870 I python  :    File "~/MEGAsync/KivyLab/KivyMD/COVIDKillers/.buildozer/android/platform/build-arm64-v8a/build/python-installs/COVIDKillers/kivy/base.py", line 504, in runTouchApp
07-25 14:24:01.803 14777 14870 I python  :    File "~/MEGAsync/KivyLab/KivyMD/COVIDKillers/.buildozer/android/platform/build-arm64-v8a/build/python-installs/COVIDKillers/kivy/core/window/window_sdl2.py", line 747, in mainloop
07-25 14:24:01.803 14777 14870 I python  :    File "~/MEGAsync/KivyLab/KivyMD/COVIDKillers/.buildozer/android/platform/build-arm64-v8a/build/python-installs/COVIDKillers/kivy/core/window/window_sdl2.py", line 479, in _mainloop
07-25 14:24:01.803 14777 14870 I python  :    File "~/MEGAsync/KivyLab/KivyMD/COVIDKillers/.buildozer/android/platform/build-arm64-v8a/build/python-installs/COVIDKillers/kivy/base.py", line 348, in idle
07-25 14:24:01.804 14777 14870 I python  :    File "~/MEGAsync/KivyLab/KivyMD/COVIDKillers/.buildozer/android/platform/build-arm64-v8a/build/python-installs/COVIDKillers/kivy/clock.py", line 598, in tick_draw
07-25 14:24:01.804 14777 14870 I python  :    File "kivy/_clock.pyx", line 427, in kivy._clock.CyClockBase._process_events_before_frame
07-25 14:24:01.804 14777 14870 I python  :    File "kivy/_clock.pyx", line 467, in kivy._clock.CyClockBase._process_events_before_frame
07-25 14:24:01.804 14777 14870 I python  :    File "kivy/_clock.pyx", line 465, in kivy._clock.CyClockBase._process_events_before_frame
07-25 14:24:01.804 14777 14870 I python  :    File "kivy/_clock.pyx", line 154, in kivy._clock.ClockEvent.tick
07-25 14:24:01.805 14777 14870 I python  :    File "kivy/_clock.pyx", line 86, in kivy._clock.ClockEvent.get_callback
07-25 14:24:01.805 14777 14870 I python  :    File "~/MEGAsync/KivyLab/KivyMD/COVIDKillers/.buildozer/android/platform/build-arm64-v8a/build/python-installs/COVIDKillers/kivy/weakmethod.py", line 56, in is_dead
07-25 14:24:01.805 14777 14870 I python  :  ReferenceError: weakly-referenced object no longer exists
07-25 14:24:01.805 14777 14870 I python  : Python for android ended.

还有一个 Java 错误。由于错误真的很长,这里有一个链接:Java Error

有人知道导致我的应用崩溃的原因吗?如果有人需要查看我的应用程序的代码,我会留下一个链接。

提前致谢!

【问题讨论】:

    标签: java python android kivy referenceerror


    【解决方案1】:

    事实证明,我的应用程序中的一个元素依赖于我稍后在程序中删除的变量。我现在已经修复了我的应用程序。

    【讨论】:

    • 我遇到了同样的错误。能详细解释一下吗?
    • 我一直在删除带有del 关键字的变量。这就是导致 Android 出现问题的原因。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-13
    • 2020-04-21
    • 1970-01-01
    • 2019-11-12
    • 2021-03-14
    • 1970-01-01
    相关资源
    最近更新 更多