Python 问题,智能手机上的 kivy 应用程序
Problem with Python, kivy application on smartphone
我用 python 和 kivymd 编写了一个简单的应用程序,它可以在 PC 上运行但不能在 smartphones 上运行。为了将代码转换为 apk 文件,我在 google colab 中使用了 buildozer。 Buildozer 规范文件以及代码对我来说看起来不错,因此它应该可以在移动设备上运行 phone。我尝试通过 ADB 检查 logcat,但我不知道要查找什么 我的应用程序中有很多信息、调试信息和警告,但我不知道它们中哪些是重要的,哪些是很正常。
File "/content/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/Calculator/kivymd/uix/behaviors/elevation.py", line 364, in <module>
26860 7420 I python: ModuleNotFoundError: No module named 'PIL'
26860 7420 I python: Python for android ended.
647 647 I io_stats: !@ 8,0 r 50398943 1331874748 w 21301992 207147416 d 6584221 396580196 f 0 0 iot 34055544 0 th 0 0 0 pt 0 inp 0 0 488813.237
1348 1578 W InputDispatcher: channel '84af54b org.honi.calculator/org.kivy.android.PythonActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x9, fd=1119
1348 1578 E InputDispatcher: channel '84af54b org.honi.calculator/org.kivy.android.PythonActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
1348 4563 D InputTransport: Input channel destroyed: 'ClientS', fd=1114
1348 1831 I ActivityManager: Process org.honi.calculator (pid 26860) has died: fg TOP (186,1799)
943 991 I SurfaceFlinger: id=110000 Removed Bounds for - org.honi.calculator/org.kivy.android.PythonActivity@0#0 (161)
943 991 I SurfaceFlinger: id=110001 Removed SurfaceView - org.honi.calculator/org.kivy.android.PythonActivity@d69d998@0#0 (161)
943 990 I SurfaceFlinger: id=110002 Removed Background for -SurfaceView - org.honi.calculator/org.kivy.android.PythonActivity@d69d998@0#0 (161)
834 834 I Zygote : Process 26860 exited cleanly (255)
853 853 I Sensors : batch(0) - accelerometer_sensor try to batching with 100000000
1348 2293 I WindowManager: WIN DEATH: Window{84af54b u0 org.honi.calculator/org.kivy.android.PythonActivity}
1348 2293 W InputDispatcher: Attempted to unregister already unregistered input channel '84af54b org.honi.calculator/org.kivy.android.PythonActivity (server)'
我认为问题一定出在logcat这部分。
有人知道如何解决这个问题吗?
你应该看看只以python
开头
像这样:
26860 7420 I python: ModuleNotFoundError: No module named 'PIL'
26860 7420 I python: Python for android ended.
因为它们是来自 Kivy 应用程序的日志。
但无论如何,您应该检查 buildozer.spec 文件的日志级别。
我用 python 和 kivymd 编写了一个简单的应用程序,它可以在 PC 上运行但不能在 smartphones 上运行。为了将代码转换为 apk 文件,我在 google colab 中使用了 buildozer。 Buildozer 规范文件以及代码对我来说看起来不错,因此它应该可以在移动设备上运行 phone。我尝试通过 ADB 检查 logcat,但我不知道要查找什么 我的应用程序中有很多信息、调试信息和警告,但我不知道它们中哪些是重要的,哪些是很正常。
File "/content/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/Calculator/kivymd/uix/behaviors/elevation.py", line 364, in <module>
26860 7420 I python: ModuleNotFoundError: No module named 'PIL'
26860 7420 I python: Python for android ended.
647 647 I io_stats: !@ 8,0 r 50398943 1331874748 w 21301992 207147416 d 6584221 396580196 f 0 0 iot 34055544 0 th 0 0 0 pt 0 inp 0 0 488813.237
1348 1578 W InputDispatcher: channel '84af54b org.honi.calculator/org.kivy.android.PythonActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x9, fd=1119
1348 1578 E InputDispatcher: channel '84af54b org.honi.calculator/org.kivy.android.PythonActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
1348 4563 D InputTransport: Input channel destroyed: 'ClientS', fd=1114
1348 1831 I ActivityManager: Process org.honi.calculator (pid 26860) has died: fg TOP (186,1799)
943 991 I SurfaceFlinger: id=110000 Removed Bounds for - org.honi.calculator/org.kivy.android.PythonActivity@0#0 (161)
943 991 I SurfaceFlinger: id=110001 Removed SurfaceView - org.honi.calculator/org.kivy.android.PythonActivity@d69d998@0#0 (161)
943 990 I SurfaceFlinger: id=110002 Removed Background for -SurfaceView - org.honi.calculator/org.kivy.android.PythonActivity@d69d998@0#0 (161)
834 834 I Zygote : Process 26860 exited cleanly (255)
853 853 I Sensors : batch(0) - accelerometer_sensor try to batching with 100000000
1348 2293 I WindowManager: WIN DEATH: Window{84af54b u0 org.honi.calculator/org.kivy.android.PythonActivity}
1348 2293 W InputDispatcher: Attempted to unregister already unregistered input channel '84af54b org.honi.calculator/org.kivy.android.PythonActivity (server)'
我认为问题一定出在logcat这部分。 有人知道如何解决这个问题吗?
你应该看看只以python
开头像这样:
26860 7420 I python: ModuleNotFoundError: No module named 'PIL'
26860 7420 I python: Python for android ended.
因为它们是来自 Kivy 应用程序的日志。
但无论如何,您应该检查 buildozer.spec 文件的日志级别。