![]() |
iOS: SQLite Bereitstellung auf Gerät
Hi und guten Morgen allerseits,
ich möchte SQLite in einer iOS-App benutzen. Das funktioniert auch alles sehr gut, im Bereitstellungsmanager habe ich alles hinterlegt und die SQLite-Datei wird vom Entwicklungsrechner via PA-Server übertragen. Es funktionert leider nur FAST alles: Wenn ich als Built-Konfiguration "Release" auswähle, als Zielplattform "iOS-Gerät" und darunter "AdHoc", dann wird die App zwar auf dem Gerät installiert, kann auch gestartet werden und scheint zu funzen - aber wenn ich die Datenbank öffne, dann erhalte ich die Meldung "database disk image is malformed" und nix geht. Alle anderen Konfigurationen (Debug/Simulator, Release/Simulator, Debug/Gerät) funktionieren, die Datenbank wird übertragen und kann ganz normal benutzt werden. Auch wenn ich die Datenbank zur Laufzeit anlege ist alles ok. Ich benutze zur Verbindung mit der Datenbank die Standard-DBX-Komponenetn (TSQLConnection , TSQLDataSet). Was ist zu tun? |
AW: iOS: SQLite Bereitstellung auf Gerät
teste mal, ob die datenbank wirklich da ist (fileexits), wenn nein, die Bereitstellung ist auch unterschiedlich zwischen debug und release (warum auch immer)
|
AW: iOS: SQLite Bereitstellung auf Gerät
Ja, die Datei ist da, das hab' ich schon ziemlich zuerst getestet.
Eine ander Datei (nicht SQLite sondern eine ganz normale Text-Datei wird ornungsgemäß deployed) |
AW: iOS: SQLite Bereitstellung auf Gerät
Zitat:
|
AW: iOS: SQLite Bereitstellung auf Gerät
Die Datei hat auf dem Gerät die gleiche Größe wie auf dem Entwicklungsrechner. Ich habe inzwischen mal die Datei auf dem iPad erstellt, dann ist alles ok. Wenn ich jetzt diese auf dem iPad erstellte Datei mit Xcode und Organizer auf den Entwicklungsrechner kopiere, und dann anschliessend wieder aufs Gerät deploye, dann gibts wieder die Fehlermeldung "Database image is malformed". Es scheint also an der Übertragung zu liegen. Möglicherweise an der Dateigröße, wenn ich nämlich eine nur wenig gefüllte Datenbank deploye, dann funktioniert es ebenfalls.
Ich möchte die Datenbank auf dem Zielgerät nur ungern erstellen, da es sich um ca. 30.000 Datensätze handelt. Ich möchte es unseren Anwendern eigentlich gerne ersparen, nach der Installation warten zu müssen bis die Datenbank installiert bzw. gefüllt ist. |
AW: iOS: SQLite Bereitstellung auf Gerät
Hast Du mal andere Komponenten ausprobiert wie zum Beispiel UniDAC ob es damit besser funktioniert ?
|
AW: iOS: SQLite Bereitstellung auf Gerät
Zitat:
Allerdings funktioniert es ja alles grundsätzlich, es scheint ja irgendwie ein Problem mit der Bereitstellung zu sein. |
AW: iOS: SQLite Bereitstellung auf Gerät
Also jetzt habe ich das mal mit einem anderen Gerät ausprobiert, da funktioniert es erstaunlicherweise. Das wo es funktioniert ist ein iPad mini, gleicher iOS-Stand, auch 16GB 3G-Version. Allerdings sind auf diesem Gerät 12,9 GB frei, auf dem iPad wo's nicht funzt nur 7,8. Die Datenbank ist aber lediglich 3,9 MB groß, daran sollte es doch wohl nicht liegen. das iPda habe ich auch schon mal komplett runtergefahren, geht trotzdem nicht.
|
AW: iOS: SQLite Bereitstellung auf Gerät
Überschreibst du dein Projekt immer wieder oder deinstallierst du es bevor du es neu deployst?
Hatte mal einen ähnlichen Fall. Seitdem deinstalliere/lösche ich die App bevor ich sie neu einspiele. |
AW: iOS: SQLite Bereitstellung auf Gerät
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz