10.3Der Organizer
Der Organizer ist die zentrale Schnittstelle für die Verwaltung von Geräten, Projekten und Archiven.
Den Organizer rufen Sie in Xcode über den Menüpunkt Window • Organizer oder die Tastenkombination +
+
. Der Organizer besitzt eine Reiternavigation, über die Sie auf die einzelnen Bereiche
zugreifen.
10.3.1Die Geräteverwaltung

Die Geräteverwaltung (siehe Abbildung 10.38), die Sie unter dem Reiter Devices im Organizer finden, ermöglicht es Ihnen, Ihre Geräte für die Entwicklung einzurichten und zu konfigurieren. Der Organizer ruft – einen kostenpflichtigen Zugang für das iPhone Developer Program vorausgesetzt – alle für die Einrichtung notwendigen Daten selbständig aus dem Entwicklerportal bei Apple ab und installiert die notwendigen Zertifikate und Provisionsprofile auf dem Endgerät. Die notwendigen Schritte dafür haben wir bereits im ersten Kapitel erklärt.
Abbildung 10.38 Die Geräteverwaltung in Xcode
Sie können über den Organizer nicht nur Geräte einrichten, sondern auch auf die Daten dieser Geräte zugreifen. Das ist bei der Entwicklung und insbesondere beim Debugging häufig sehr hilfreich. Zu jedem Gerät finden Sie mehrere Unterpunkte. Unter Provisioning Profiles sehen Sie alle Profile, die Sie auf dem Gerät explizit oder implizit installiert haben. Abgelaufene Profile entfernt das iOS nicht automatisch, und deshalb sollten Sie sie über diesen Dialog regelmäßig von Ihren Geräten löschen.
Alte Profile
Alte Profile haben keinen Nutzen mehr für die Entwicklung. Sie können abgelaufene Profile unbesorgt von Ihren Geräten löschen, denn diese Profile können Ihnen im Zweifelsfall viel Ärger bereiten.
Unter dem Punkt Applications (siehe Abbildung 10.39) finden Sie alle Apps, die Sie auf dem Gerät installiert haben. Wenn Sie eine App auswählen, können Sie sich ihre Sandbox ansehen. Die Sandbox ist das applikationsspezifische Verzeichnis der App auf dem Gerät. Dieses Verzeichnis enthält das App-Bundle sowie alle von der App erzeugten Dateien und Verzeichnisse. Wenn Sie beispielsweise das Fototagebuch auf Ihrem iPhone installiert und ausgeführt haben, finden Sie in der Sandbox das Verzeichnis Documents und darin die Datei Games.sqlite. Diese Datei enthält die SQLite-Datenbank mit den Daten des Fototagebuchs.
Abbildung 10.39 Zugriff auf die Sandbox einer App
Unter Console finden Sie die Konsolenausgaben des Geräts. Dort sehen Sie die Log-Ausgaben aller Frameworks und Applikationen auf dem Gerät. Sie können über die Funktion NSLog auch eigene Einträge in die Konsole schreiben.
Unter Device Logs finden Sie alle Crashreports oder auch Fehlerberichte der Apps. Einen Fehlerbericht erstellt iOS nach dem Absturz einer App, und er enthält Informationen über eine App zum Zeitpunkt ihres Absturzes. Über den Punkt Screenshots können Sie Bildschirmfotos von dem Gerät anfertigen, ohne den Bildschirm berühren oder die Tasten des Geräts drücken zu müssen.
Fehlerberichte von fremden Geräten
Über iTunes Connect [Anm.: http://itunesconnect.apple.com] können Sie die Fehlerberichte Ihrer Apps herunterladen, die auf den Geräten von anderen Nutzern aufgetreten sind. Das geht natürlich nur mit Ihren Apps im iTunes Store, und der jeweilige Nutzer muss einer Übertragung des Fehlerberichts an Apple zugestimmt haben. Wenn Sie einen solchen Fehlerbericht auf Device Logs unter Library ziehen, können Sie ihn sich ansehen. Dabei löst Xcode auch die Speicheradressen zu den Symbolnamen auf, wenn Sie das Archiv des iTunes-Uploads der App aufgehoben haben.
10.3.2Archive und die Archivverwaltung

Wenn Sie Ihre Apps an Dritte weitergeben möchten, vertreiben Sie sie entweder über den iTunes Store oder über eine Ad-hoc- beziehungsweise In-House-Distribution. Dafür müssen Sie zunächst von Ihrer App ein Archiv erstellen. Das ist ein Paket, das eine App mit dem übersetzten Code und allen Ressourcen enthält. Außerdem enthält es Metadaten und die Debug-Symbole des Programms. Anhand der Debug-Symbole kann Xcode in einem Crashreport aus den Speicheradressen wieder Klassen-, Methoden- und Funktionsnamen ermitteln, was Ihnen die Fehlersuche erleichtert.
Archive aufheben
Sie können sich auch ohne das entsprechende Archiv Fehlerberichte in Xcode oder in einem Texteditor ansehen, da sie einfache Textdateien sind. Allerdings fehlen Ihnen dann die Symbolinformationen Ihrer Quelltexte. Sie sehen stattdessen nur Zahlen. Heben Sie also möglichst immer die Archive auf, mit denen Sie eine erfolgreiche Distribution durchgeführt haben.
Über den Menüpunkt Product • Archive können Sie ein neues Archiv anlegen, wenn Sie in der Schemaauswahl in der Werkzeugleiste ein Gerät oder iOS Device ausgewählt haben. Nach der Erstellung des Archivs öffnet Xcode die Archivverwaltung im Organizer und selektiert dabei das erstellte Archiv (siehe Abbildung 10.40). Die Leiste auf der linken Seite enthält eine Liste aller Applikationen, von denen Sie Archive besitzen.
Die Detailansicht auf der rechten Seite enthält unten eine Liste der einzelnen Archive zu der ausgewählten App. Im oberen Bereich zeigt sie Informationen zu dem ausgewählten Archiv an. Dort befinden sich außerdem Buttons für die Verteilung Ihrer App.
Abbildung 10.40 Die Archivverwaltung in Xcode
IPA-Dateien
IPA-Dateien enthalten alle notwendigen Dateien, um eine App auf einem Gerät installieren zu können. Sie besitzen zwar die Dateiendung .ipa, haben indes das Dateiformat von Zip-Archiven. Sie können sich also den Inhalt einer IPA-Datei über ein Zip-Dekomprimierungsprogramm (z. B. unzip) ansehen, oder Sie ändern die Dateiendung in .zip und öffnen die Datei bequem über den Finder.
Der Button Distribute... dient zum Upload von Apps in den iTunes Store oder zur Verteilung über Ad-hoc- und In-House-Distributionen. Wenn Sie eine App in den Store laden möchten, müssen Sie dafür zunächst in iTunes Connect [Anm.: http://itunesconnect.apple.com] eine entsprechende Applikation anlegen. Die Zuordnung Ihrer programmierten App zu der Applikation geschieht dort über den Bundle-Identifier. Achten Sie bei der Einrichtung also darauf, dass Sie hier den gleichen Wert wie in Ihrer App eintragen.
Dabei erfolgt die Konfiguration schrittweise über einen bedienungsfreundlichen Assistenten. Der Einrichtungsprozess endet mit dem Drücken des Buttons Ready to Upload Binary. Danach zeigt iTunes Connect den Applikationsstatus Waiting For Upload an. Die Applikation in iTunes Connect muss sich in diesem Zustand befinden, damit Sie die Buttons Validate... und Submit... sinnvoll verwenden können.
Über Validate... können Sie Ihre App vor einem Upload in iTunes Connect überprüfen lassen. Xcode prüft hierbei die Gültigkeit der Codesignatur und anderer Daten der App. Dazu fragt Xcode Sie zuerst nach Ihren Zugangsdaten. Im nächsten Schritt wählen Sie die Applikation und das Zertifikat für die Signatur Ihrer App aus. Sie müssen hier unbedingt das gleiche Distributionszertifikat verwenden, das Sie auch für die Release-Konfiguration in den Build Settings des Targets eingetragen haben. Nachdem Sie auf den Button Next geklickt haben, sendet Xcode die notwendigen Daten an iTunes Connect, und nach einer kurzen Wartezeit sehen Sie das Ergebnis der Validierung.
Der Upload einer App in den App Store erfolgt nach Auswahl der Distributionsmethode (siehe Abbildung 10.41) mit nahezu den gleichen Schritten wie die Validierung. Lediglich die Vorbereitung des Uploads und die Übertragung der Daten dauern bei größeren Apps gegebenenfalls länger, weswegen es immer sinnvoll ist, das Archiv vor dem Upload zu validieren. Auch hier erhalten Sie am Ende des Prozesses eine Meldung, ob der Upload erfolgreich war.
Abbildung 10.41 Auswahl der Distributionsmethode
10.3.3Projektverwaltung
Unter Projects finden Sie die Projektverwaltung des Organizers, die auf der linken Seite die Projekte enthält, die Sie bisher geöffnet haben (siehe Abbildung 10.42). Dabei zeigt der blaugraue Punkt neben einem Projekt an, dass Sie es geöffnet haben.
Abbildung 10.42 Die Projektverwaltung
Der obere Bereich zeigt Ihnen den Pfad der Projektdatei unter Location an. Unter Derived Data legt Xcode alle Dateien ab, die die Entwicklungsumgebung während eines Build-Prozesses erzeugt. Unter Snapshots finden Sie das Verzeichnis, das alle Snapshots des Projekts enthält. Neben der Projektdatei beziehungsweise den Verzeichnissen befindet sich jeweils ein weißer Pfeil in einem grauen Kreis. Wenn Sie darauf klicken, öffnet Xcode ein entsprechendes Dateifenster im Finder. Über die Delete-Buttons können Sie das entsprechende Verzeichnis löschen.
Der untere Bereich des Dialogs listet alle Snapshots des Projekts auf. Der Button User Created Snapshots schränkt die Anzeige auf die manuell erzeugten Snapshots ein (siehe Abschnitt 10.1.10, »Snapshots«) und blendet die automatisch erzeugten aus. Über den Button Export Snapshot am unteren Fensterrand können Sie Snapshots als vollständige Projekte ins Dateisystem exportieren, ohne die aktuelle Projektversion überschreiben zu müssen.
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.