Ich versuche, eine Kivy-App mit dem Buildozer virtuellen Maschine zu bauen. Es funktioniert gut, solange meine main.py keine bestimmten Pfade zu Dateien enthält. Zum Beispiel möchte ich in meiner App ein Bild anzeigen. Wenn ich unter Windows laufen, würde ich die Quelle alsPfad zu Dateien in Kivy-App nicht gültig nach dem Erstellen mit Buildozer
C:\pathtoapp\img\image.png
In Ubuntu specifiy wäre es
/home/pathtoapp/img/image.png
sein, wenn ich versuche, die App mit buildozer zu bauen ich die Fehlermeldung:
I/Python (15649): [Error ] [Image ] Error reading file
und dann den obigen Pfad. Hier ist ein Beispiel, das auf Ubuntu funktioniert, aber was die oben Fehlermeldung, wenn auf mein Android-Handy im Einsatz:
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()
Jetzt bin ich verwirre, wie ich weiß nicht, wie richtig den Weg in meinem Code angeben .
Wow, das hätte ich selbst herausfinden sollen. Danke vielmals. Es funktioniert mit relativen Pfaden, aber ich behalte den Sicherheitsfang im Auge, falls ich in der Zukunft auf Probleme stoße. – Jobiwan