在安卓手机上运行应用程序时没有名为“kivymd”的模块

Posted

技术标签:

【中文标题】在安卓手机上运行应用程序时没有名为“kivymd”的模块【英文标题】:No module named 'kivymd' when running app on android phone 【发布时间】:2021-01-09 19:26:11 【问题描述】:

我编写了一个在我的桌面上运行良好的应用程序。我使用以下命令在手机 (android) 上部署了应用程序:

buildozer android 调试部署运行

不幸的是,应用程序在启动时崩溃,并出现以下错误:

09-23 15:36:08.878 27484 27540 I python:回溯(最近一次通话最后一次): 09-23 15:36:08.878 27484 27540 I python:文件“/home/.../.buildozer/android/app/main.py”,第 1 行,在 09-23 15:36:08.879 27484 27540 I python:ModuleNotFoundError:没有名为“kivymd”的模块 09-23 15:36:08.879 27484 27540 I python : Python for android 结束。

我的代码:

from kivymd.app import MDApp
from kivy.lang import Builder
from kivy.uix.screenmanager import Screen

class DashBoard(Screen):
    pass

class FirstScreen(Screen):
    pass

class MyApp(MDApp):
    def build(self):
        self.title = 'Something'
        self.theme_cls.primary_palette = 'Blue'
        return Builder.load_file('main.kv')

MyApp().run()

我真的不明白这个错误,因为该应用在我的计算机上运行良好。

【问题讨论】:

【参考方案1】:

解决了这个问题。需要编辑buildozer.spec文件:

# (list) Application requirements
# comma separated e.g. requirements = sqlite3,kivy
requirements = python3,kivy,kivymd

...并添加“kivymd”

【讨论】:

以上是关于在安卓手机上运行应用程序时没有名为“kivymd”的模块的主要内容,如果未能解决你的问题,请参考以下文章

Python kivymd 退出时弹出

.spec 文件中的“ModuleNotFoundError:没有名为 'kivymd' 的模块”

即使在调试之后,Kivymd 应用程序也会在启动时崩溃

在真正的安卓手机上运行应用程序时如何查看应用程序的错误信息?

在电脑上打开安卓软件怎么办

安卓系统的手机怎么投屏到电脑上去