You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python KivyMD应用PC运行正常手机闪退 日志提示缺少PIL模块如何解决

问题根因

你提供的logcat日志中核心报错为ModuleNotFoundError: No module named 'PIL',PIL是Python图像处理库Pillow的旧称,KivyMD的高程效果组件依赖该库。PC端运行正常是因为你本地环境已经安装了Pillow,打包APK时未将该依赖加入Buildozer配置,导致手机端运行时库缺失直接崩溃,后续的进程死亡、输入通道销毁等日志都是该报错引发的连锁反应。

解决步骤
  • 修改buildozer.spec配置文件,找到requirements配置行,在原有依赖(通常包含python3、kivy、kivymd)的末尾添加,pillow,多个依赖之间用英文逗号分隔,示例配置如下:
    requirements = python3,kivy==2.1.0,kivymd==1.2.0,pillow
  • 升级本地环境的依赖版本到稳定兼容版,避免版本不匹配问题,PC端执行命令:
    pip install --upgrade kivymd pillow
  • 清理Buildozer旧构建缓存,避免历史构建产物影响新包生成,在构建环境(Colab)中执行命令:
    buildozer android clean
  • 重新执行APK打包命令,新生成的安装包即可正常在手机上运行。
排查小技巧

后续如果遇到同类打包后崩溃问题,直接在logcat中筛选前缀为I python:的日志即可,所有Python层面的运行报错都会用该前缀输出,其余系统级的进程销毁、资源回收类日志都是崩溃后的衍生输出,不需要优先排查。

内容的提问来源于stack exchange,提问作者Atylla011

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 12:48:02