Kivy Buildozer构建APK启动即崩溃,提示缺失_sqlite3.so与_imaging.so库
解决Kivy应用Buildozer打包APK后启动崩溃(缺失_sqlite3.so/_imaging.so)的问题
你的APK启动崩溃的原因很明确——Buildozer没有把_sqlite3.so和_imaging.so这两个关键的动态库打包进安装包。前者对应Python的sqlite3模块,后者是Pillow(图像处理库)的底层依赖,哪怕你没在代码里主动调用它们,Kivy的部分内部逻辑可能也会间接用到。下面是具体的修复步骤:
1. 修正Buildozer配置文件(buildozer.spec)
打开项目根目录下的buildozer.spec,找到requirements配置项,确保它包含pillow和sqlite3两个依赖。修改后的配置示例:
requirements = python2,kivy,pillow,sqlite3
如果你的应用确实不需要sqlite3,可以尝试后续步骤,但优先添加依赖是最稳妥的做法,避免打包时遗漏必要库。
2. 清理缓存后重新打包
旧的构建缓存经常会导致依赖打包不完整,执行以下命令彻底清理后重新构建:
buildozer android clean buildozer android debug deploy run
3. 调整Android API级别(可选)
如果上面的步骤无效,检查buildozer.spec里的android.api配置,建议设置为API 28或30这类稳定版本——过高或过低的API级别可能会引发库加载兼容性问题。
内容的提问来源于stack exchange,提问作者Ashin Shakya
相关产品推荐
相关产品推荐

