我正在尝试使用 buildozer 虚拟机构建一个 kivy 应用程序。只要我的 main.py 不包含任何特定的文件路径,它就可以正常工作。例如,在我的应用程序中,我想显示一张图片。如果我在 Windows 上运行,我会将源指定为
C:\pathtoapp\img\image.png
在 Ubuntu 中会是
/home/pathtoapp/img/image.png
如果我尝试使用 buildozer 构建应用程序,我会收到错误消息:
I/Python (15649): [Error ] [Image ] Error reading file
然后是上面的路径。这是一个适用于 Ubuntu 的示例,但在部署到我的 Android 手机时会显示上述错误消息:
from kivy.lang import Builder
from kivy.app import App
from kivy.uix.image import Image
kv = '''
BoxLayout:
Image:
source: app.image
'''
class Test(App):
def build(self):
self.image = '/home/kivy/Desktop/test/img/g3347.png'
print(self.image)
return Builder.load_string(kv)
if __name__ == '__main__':
Test().run()
现在我很困惑,因为我不知道如何在我的代码中正确指定路径。