导入外部库时 Kivy 在启动时崩溃

Posted

技术标签:

【中文标题】导入外部库时 Kivy 在启动时崩溃【英文标题】:Kivy crashes on launch when importing external libraries 【发布时间】:2019-06-16 12:06:50 【问题描述】:

我使用 Kivy Launcher 运行了一个基本的“Hello World”程序,它运行良好,但是当我一开始添加 import cv2 时,应用程序在启动后立即崩溃。

主.py: Main.py code

android.txt: Image of Android.txt

谢谢!

【问题讨论】:

我也尝试将 android.txt 文件中的 'cv2' 替换为 'opencv',但效果不佳 【参考方案1】:

kivy 启动器用于严格运行 Kivy 模块和 Python 预装模块。所以在这种情况下,由于 cv2 没有预装在普通的 python 安装中,kivy 启动器无法识别它,然后得到一个“ModuleNotFoundError: No Module named cv2”错误,这会导致它崩溃。因此,如果您尝试导入预装 python 的模块以外的模块,则必须使用 Buildozer 编译成 .apk 文件才能在 android 上运行它

【讨论】:

那么不使用buildozer就没有办法导入外部库吗? 我不知道,除非您将整个 cv2 模块中的所有代码复制并粘贴到您的 python 文件中,因为这是找不到文件的问题

以上是关于导入外部库时 Kivy 在启动时崩溃的主要内容,如果未能解决你的问题,请参考以下文章

为 webRTC 加载本机库时应用程序崩溃

执行 Swift 库时 iOS 崩溃

使用 SWIG (AIX 5.1) 从 Perl 调用 C++ 库时崩溃

我在导入 PyDictionary 库时遇到问题

android 应用程序中的 Geckoview 因错误“java.lang.Exception:加载 sqlite 库时出错”而崩溃

将公共证书导入密钥库时出错