Startseite › Foren › Deutsches LiveCode-Forum › Einstellungen Standalone – Übergabe an iPhone
Schlagwörter: Copy Files, Iphone, Standalone
- Dieses Thema hat 7 Antworten und 3 Teilnehmer, und wurde zuletzt aktualisiert vor 7 Jahren, 3 Monaten von
Klaus Major.
-
AutorBeiträge
-
-
Dezember 22, 2017 um 08:38 Uhr #3329
Hallo,
ich habe ein kleines Problem:
Beim Übertragen der APP auf mein iPhone werden die zusätzlichen Dateien und Ordner, wie Bilder, Datenbank, DatePicker (Stack) nicht mit übertragen. Vermutlich ein Fehler von mir bei den Standalone-Settings. In den Reiter „Copy Files“ habe ich diese eingetragen, indem ich sie im Explorer ausgewählt habe.
Es wird dann z.B. folgendes angezeigt:
Bilder/*
datepicker/*
Datenbank-SQLite/daten.dbDie Ordner, bzw. Dateien werden aber scheinbar nicht auf mein iPhone übertragen.
Kann mir jemand helfen?
Herzliche Grüße und ein schönes Weihnachtsfest
Wolli
-
Dezember 22, 2017 um 11:16 Uhr #3331
Hi,
ich habe zwar keinen Mac oder iPhone aber Haukes Buch ?. Auf Seite 346 rät er dazu „COPY REFERENCED FILES“ inaktiv zu lassen. Hast Du das berücksichtigt? Außerdem gibt es zum Buch noch beim Verlag noch Zusatzinformation zum Download – eventuell ist da auch was speziell für iPhone dabei. Darf ich fragen welchen Mac du benutzt bzw. welche CPU und wieviel Arbeitsspeicher du zur Verfügung hast?
LG
Georg -
Dezember 22, 2017 um 11:44 Uhr #3335
Hi Wolli,
Die Ordner, bzw. Dateien werden aber scheinbar nicht auf mein iPhone übertragen.
woran merkst Du, daß sie nicht vorhanden sein sollen?
Mit welchem Skript greifst Du darauf zu?Alle Dateien und Ordner, die Du so Deiner Standalone hinzugefügt hast, findest Du dann hier:
specialfolderpath(„resources“)Und nicht vergessen, iOS (und Android) habe ein CASE-sensitives Betriebsystem: bilder <> Bilder
Gruß
Klaus
-
Dezember 22, 2017 um 16:21 Uhr #3364
Hallo Klaus,
vielen Dank für die schnelle Antwort.
Wenn die APP auf dem iPhone ist, kann ich sie ausführen, aber es sind keine Bilder vorhanden, ebenso fehlt der DatePicker und beim Oeffnen/Schreiben von Daten erhalte ich die Meldung, dass die Datenbank nicht gefunden wurde. Im Simulator funktioniert alles einwandfrei.
Das mit dem specialfolderpath(„resources“) habe ich mir schon gedacht – ist für mich noch Neuland – damit muss ich mich wohl noch auseinandersetzen! Kannst Du mir dazu Hilfeseiten nennen?
Herzliche Grüße und ein schönes Weihnachtsfest.
-
Dezember 22, 2017 um 21:26 Uhr #3366
Hi Wolli,
ich hate ein ellenlange Replik geschrieben, aber bekomme IMMER nur eine Fehlermeldung beim Absenden?
Werde Hauke mal fragen, ob das Not tut! 🙂Schick mir mal deine Emailadresse, dann schicke ich Dir das per Mail: klaus AT major-k.de
Liebe Grüße
Klaus
-
Dezember 22, 2017 um 23:20 Uhr #3368
So, habe das blöde große Oe eliminiert, auf ein Neues… 🙂
——————————————————————
Hi Wolli,klingt, als würdest Du absolute Pfade zu Deinen Bildern angegeben haben!?
Sprich, der ganze Pfad zu Deinem Bild auf Deiner Festplatte MIT dem Namen der Festplatte.Daher findet der Simulator auch die Bilder, er liegt ja auf Deiner Festplatte innerhalb von Xcode, aber das Gerät nicht, weil es Deine Festplatte nicht kennt.
Verwende relative Pfadnamen und alles wird gut 🙂
Und das geht so…Ich nehme an der Ordner Bilder liegt im selben Ordner wie der Stack, zumindest sollte er das.
Dann wählst Du Dein Bild aus und Du sieht den absoluten Pfad, hier auf meinem Rechner:
/Users/klaus/Desktop/Teststack/Bilder/bad2.JPGDer Stack mit dem Bild liegt in diesem Ordner:
/Users/klaus/Desktop/TeststackNun loescht Du das Absolute aus dem Pfad, bis nur der Ordner Bilder und der Dateiname übrig bleibt:
Bilder/bad2.JPGEt voila, Bild immer noch zu sehen, weil der Stack im selben Ordner wie der Ordner „Bilder“ liegt und er so nun, trotz fehlender kompletter Adresse, relativ (zum Stack) gefunden wird.
Soweit klar? 🙂
Die Engine bzw. Standalone übersetzt diesen relativen Pfad automatisch zu -> specialfolderpath(„resources“), ohne daß wir das machen müssen, und das Bild ist auch auf dem Device zu sehen.
Datepicker:
Den oder die Stack(s) in dem Ordner rufst Du folgendermaßen auf:
…
put specialfolderpath(„resources“) & „/name_deines_stack.livecode“ into tStack
go stack tStack
### Nicht vergessen, wir haben innerhalb des Application Packages KEINE Schreibrechte, Du kannst so also diese datepicker Stack(s) nicht speichern!Dito für die Datenbank, die darfst Du da noch nicht einmal Oeffnen!
Die musst Du erst in den DOCUMENTS Ornder kopieren und von dort Oeffnen, dort haben wir Schreibrechte!Das solltest Du beim Oeffnen Deines Stacks machen, also „on openstack“.
... ## 1. Zunächst alle benOetigten Pfade zusammenbasteln: ## Pfad zur Datenbank Datei innerhalb des App Package: put specialfolderpath("resources") & "/Datenbank-SQLite/daten.db" into tSourceDB ## Pfad zum DOCUMENTS Ordner des Users: put specialfolderpath("documents") & "/Datenbank-SQLite/daten.db" into tTargetDB ## Prüfen, ob die App wirklich zum allerersten Mal startet und nur dann die DB kopieren! if there is not a file tTargetDB then ## Datei noch nicht vorhanden, also rüberkopieren: put url("binfile:" & tSourceDB) into url("binfile:" & tTargetDB) end if ## fertig. ...
Beim Oeffnen der DB mit revopendatabase übergibst Du dann das als Dateipfad:
... put specialfolderpath("resources") & "/Datenbank-SQLite/daten.db" int tDB put revOpenDatabase("sqlite",tDB) into tDBID ...
Ja, so, weit, so gut erst mal, viel Spaß, bei Fragen fragen! 🙂
Gruß
Klaus
-
Dezember 23, 2017 um 14:37 Uhr #3370
Korrektur zu DATEPICKER!
…
Datepicker:
Den oder die Stack(s) in dem Ordner rufst Du folgendermaßen auf:
…
put specialfolderpath(„resources“) & „/datepicker/name_deines_stack.livecode“ into tStack
go stack tStack
… -
Dezember 24, 2017 um 14:22 Uhr #3380
Und noch eine Korrektur, es muss auf dem Device natürlich die kopierte Datanbankdatei im DOCUMENTS Ordner geöffnet werden!
... put specialfolderpath("documents") & "/Datenbank-SQLite/daten.db" int tDB put revOpenDatabase("sqlite",tDB) into tDBID ...
-
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.