在安卓手机上运行应用程序时没有名为“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”的模块的主要内容,如果未能解决你的问题,请参考以下文章
.spec 文件中的“ModuleNotFoundError:没有名为 'kivymd' 的模块”