2016-11-24 95 views
0

在Windows平台上,我扩展了python路径以包含我的模块文件夹。这工作正常,但一旦基维程序由Buildozer编译成apk,Kivy Buildozer Apk - 导入自定义模块

'import'命令不再加载我的模块。日志文件读取....

[WARNING] stderr: ImportError: No module named a_sync

第一个模块出现错误。

是否有一些特殊的方法从您在数据库目录中设置的文件夹中导入自己的模块?

-------更新-------------

我不认为我的APK将导入杓文件。我可以看到我的Python路径扩展到我的模块......但没有导入。

----更新---------- apk现在运行,但图形不正确。 Kivy启动器完美地运行应用程序(图形和全部),所以建筑器构建可能会出现什么问题?

视觉效果有这种有趣的看起来失真。例如,如果一个PNG图像像圆圈一样圆,那么kivy apk的运行会显示出像星星或花朵一样的图形(不再是完全圆形的)。

---更新---- 我更新了Kivy启动器,它也有扭曲的graphcis渲染。

+0

我必须创建一个关于如何在windows上设置虚拟猜测的详细教程,以便使用buildozer进行构建,因为您在网络上的任何地方都找不到许多小小的入侵。我设法让我的应用程序运行....终于...它只花了一个星期。还有一些错误,虽然...我的图形都搞砸了。基维发射器完美地运行我的应用程序,图形和所有...所以当使用建筑商创建apk时出了什么问题? – chitondihk

回答

0

刚甩掉自定义模块在同一个地方main.py(杓)的位置。 Kivy就像我过去使用的另一个API集,除了kivy不是一个完整的3D引擎。就像我过去使用的3D引擎一样,最终的软件包从虚拟环境中运行。不同的是,我可以将自定义模块存储在python的site-packages目录中。

由于在kivy中没有这种情况(至少没有通过buildozer),根目录是最好的选择。

0

P4A已经自动设置的路径和你最有可能无法修改其他方式比这样的:

import sys 
sys.path.append('your path') 
+0

我让我的模块通过将它们转储到根文件夹中工作,但我无法使用包含图形的cab文件夹中的资源执行此操作。当我的应用程序尝试加载已退出的wav文件时,应用程序关闭“没有目录文件”错误。为什么应用程序不能看到它拥有main.pyo的根文件夹?如果你不能有一个数据库文件夹...那么你可以用kivy做什么。 – chitondihk

+0

请阅读python关于'import'工作原理的文档。如果您无法加载文件,请使用'os'模块找到它,例如'os.path.dirname(os.path.abspath(__ file __))'是一个根目录,如果这些函数在main.py中运行的话。我没有线索什么是“数据库”文件夹。如果它是Java的东西,它与Kivy甚至不相关。因为无法加载文件而导致整个框架倾倒,而且很可能您还没有看到与此类主题相关的python文档,这只是愚蠢的。 – KeyWeeUsr

+0

我知道如何进口,多年来一直使用python。我的模块问题竟然是一个spec文件问题。Kivy的文档并没有涵盖一些小小的“缺陷”,所以用户可能会像我一样在这些问题上滑倒。将来,我想写一份关于虚拟机,kivy和buildozer的完整,详细的文档......包括那些将我固定在地面上的未提及的东西。 – chitondihk

相关问题