我有一个Python / Kivy应用程序我尝试使用Buildozer为Android编译。它使用第三方模块(freeswitchESL),该模块在代码中导入:
from freeswitchESL import ESL
所有内容都可以正常编译,但应用程序一运行就会崩溃。通过查看设备返回的logcat,似乎遇到了查找模块内部名称的问题:
I/python (11682): ImportError: No module named _ESL
我无法弄清楚如何纠正这个问题。我在buildozer.spec中试过这种事情:
source.include_patterns = freeswitchESL/*
但无济于事。谁能告诉我我做错了什么?这是我第一次尝试为移动设备进行编译,而且它绝对不像我希望的那样简单;)
答案 0 :(得分:0)
buildozer.spec中的“requirements”部分正是您所需要的。
答案 1 :(得分:0)
将其他文件放在一个文件夹中并放置#contato input, textarea{
background-color: #333333;
border: none;
color: #FFFFFF;
}
可以解决这个问题。请查看此应用以获取线索https://github.com/tito/android-demo
但是,如果该应用程序是第三方,并且您没有.py文件
可能你有不同的想法。例如,如果使用numpy支持
在需求中,我们需要在buildozer.spec中以下列方式添加numpy
__init__.py
但是如果你使用pandas,scipy或scikit-learn那些不受支持,因此不能像这样添加。另一种方法是在numpy或纯python中实现该功能,或者创建一个配方。