Frage

Ich brauche die Paket-ID von meinem iPhone app zu ändern, bevor ich es dem App Store laden können. Allerdings habe ich auch Daten in meinem Core Data speichern, die auch weiterhin verwenden möchten, nachdem ich die Paket-ID zu ändern. Allerdings scheint es, dass die Paket-ID ist, wie das iPhone weiß, ob Anwendungen miteinander identisch sind, so dass ich mit zwei verschiedenen Kopien der App am Ende - mit zwei verschiedenen Kerndatenspeichern - auf meinem Handy! Ich weiß, dass ich den SQLite-Datenspeicher durch den Xcode herunterladen Veranstalter, wie kann ich sicherstellen, dass meine Datenübertragungen an das neuen App-Paket mit den neuen Bundle-Bezeichner?

War es hilfreich?

Lösung

Mit einigen Ausnahmen für OS4 jeder App (durch BI identifiziert) hat einen eigenen isolierten Speicher am Telefon ist. Wenn Sie wirklich (disable kostenlose Updates für Käufer der „alte Version“ auch) Sie diese finden müssen eine externe Migration Art und Weise ändern müssen.

Viele Apps bieten eine Art „Backup“ (auf einem PC / MAC oder etwas anderes). Was wir für einen Kunden tat, war eine Website zu schaffen, die „kurze Zeit Datenspeicher“ ermöglicht. So dass die alte App könnte die Daten hochladen - und die neuen Lasten sie nach unten. Natürlich ist dieses Mittel, um Ihre alte App Aktualisierung zuerst für den „Export“.

Aber die Idee, „App Leben in einem eigenen isolierten Welt“ auch bedeutet, dass Sie keinen Zugriff auf die Daten anderer Anwendungen haben. Unter dem Gesichtspunkt der Sicherheit ist dieser imporant und gut. Für den Bau „App-Suiten“, wo die Apps zum Austausch von Daten wollen dann ist es schlecht. Aber Äpfeln enhancments hierfür in OS4 -., Die (ich glaube) helfen Ihnen, in Ihrem Fall, da „sharing apps“ muss auch etwas Besonderes sein entworfen

Andere Tipps

ich weiß, diese Frage ist sehr alt, aber ich merkte es nur während für die Antwort auf das gleiche Problem suchen und dachte, dass es nach wie vor für andere nützlich sein könnte. Das ursprüngliche Plakat seine eigene Frage halb beantwortet, aber hat nicht ganz den nächsten Schritt.

Wenn Sie noch nicht Ihre App im App Store freigegeben und Sie möchten Ihre Paket-ID ändern, ist es möglich, Ihren Coredata Speicher von einer Sandbox auf einen anderen zu kopieren, die mit Xcode Veranstalter wie oben vorgeschlagen. Offensichtlich ist dies nur sinnvoll für das eigene Gerät (was meiner Meinung nach ist das, was das ursprüngliche Plakat tun wollte); Dieser Prozess wird Daten nicht zulassen, dass auf anderen Geräten der Benutzer übertragen werden, wenn sie Ihre App gekauft haben, tun Sie Ihre Bundle-Bezeichner so nicht ändern, nachdem Ihre App wurde veröffentlicht.

Führen Sie zuerst die alte App (die mit der alten Paket-ID) auf Ihrem Gerät. Im Xcode Organizer, wählen Sie Ihr Gerät und dann auf Programme, und wählen Sie die App (mit dem alten Identifier) ??und laden Sie die Daten auf Ihrem Mac.

Installieren Sie dann die neue App auf Ihrem Gerät (Build und führen Sie es, dann beenden). Im Xcode Veranstalter (und auf dem Gerät selbst) Sie sollten nun in der Lage sein, zwei Anwendungen, um zu sehen, eine mit jeder Bündel-Kennung. Wählen Sie den mit der neuen Kennung, wählen Sie Upload und laden Sie die Datendatei, die Sie aus der alten Sandbox gespeichert. Sie sollten nun Zugriff auf alle Ihre alten Daten in der neuen App haben. Sehr praktisch, wenn Sie nicht möchten, dass alle Daten neu erstellen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top