Ich habe ein Problem beim Zugriff auf meine Dateien in meiner Anwendung.
Ich verwende derzeit
//Directly from TileMap example from WWDC2010
NSString *tileDirectory = [[[NSBundle mainBundle] resourcePath]
stringByAppendingPathComponent:@"Tiles"];
um auf meine Kacheln für meine MKOverlay
. Dadurch erhalte ich dieses Verzeichnis
/Benutzer/xxxx/Library/Application Support/iPhone Simulator/4.2/Applications/9D62025C-C53B-472C-8309-xxxx/xxxx.app/Tiles
Das "x" dient nur dem Schutz der Privatsphäre.
Ich habe meine Kacheln in einem Ordner namens Tiles
in der Wurzel meiner Anwendung, die sich in Xcode in einer Gruppe namens Tiles
die sich direkt in der Resources
Gruppe.
Wenn ich meine App ausführe, erhalte ich eine einfache Fehlermeldung, die besagt, dass meine Kacheln im generierten Verzeichnis nicht gefunden werden konnten (das obige Zitat) Wenn ich dieses Stück Code ersetze und es:
NSString *tileDirectory = @"/Users/xxxx/Documents/xxxx/Tiles";
Dann funktioniert meine Anwendung einwandfrei. Das liegt offensichtlich daran, dass sie meine Kacheln an ihrem direkten Speicherort auf meinem Mac findet. Zum Testen ist das in Ordnung, aber ich muss es auf meinem iPhone/iPad verwenden.
Dieses Problem kann folgende Ursachen haben:
- Das erzeugte Verzeichnis ist falsch.
- Die Kachelbilder werden nicht in die erstellte Datei aufgenommen.
.app
Datei.
Wie auch immer, ich habe keine Ahnung, wie ich das Problem lösen kann.
Wie kann ich dieses Problem lösen?
[EDIT]
Ich habe diesen Teil des Codes geändert in:
NSString *tileDirectory = [[NSBundle mainBundle] resourcePath];
Jetzt funktioniert es im Simulator, weil sich alle Dateien im Stammordner der Anwendungen befinden und ich ihn nicht auffordere, ein anderes Verzeichnis namens "Tiles" zu öffnen.
Dies läuft ohne Fehler auf dem Simulator, aber wenn auf meinem iPhone gibt es die ursprüngliche Fehler (nur ein anderer Dateipfad, sondern auch endet mit /xxxx.app
Wie kann ich sicherstellen, dass ein Verzeichnis in meiner App-Datei wie xxxx.app/Tiles
- TileMap tut dies.