Wie testet man eine iOS-App auf einem echten Gerät?
- Vorbereitung: Entwicklerkonto und Gerät registrieren
- Erstellung von Provisioning Profiles und Zertifikaten
- Vorbereitung in Xcode und App-Signierung
- Installation und Test der App auf dem echten Gerät
- Alternative Methoden und Dienste
- Zusammenfassung
Vorbereitung: Entwicklerkonto und Gerät registrieren
Um eine iOS-App auf einem echten Gerät testen zu können, benötigen Sie zunächst ein Apple-Entwicklerkonto. Dieses Konto ermöglicht den Zugriff auf die notwendigen Zertifikate und Berechtigungen, um Apps auf physische Geräte zu installieren. Alternativ können Sie auch mit einem kostenlosen Apple ID-Konto testen, allerdings sind hier die Möglichkeiten eingeschränkter und die Anzahl der Geräte begrenzt.
Im Anschluss muss das zu testende iPhone oder iPad im Apple Developer Portal registriert werden. Hierfür benötigt man die UDID (Unique Device Identifier) des Geräts. Diese können Sie ermitteln, indem Sie das Gerät via USB mit Ihrem Mac verbinden und in Xcode unter Fenster > Geräte und Simulatoren nachsehen. Die UDID können Sie dort kopieren und in Ihr Entwicklerkonto unter Certificates, Identifiers & Profiles bei Devices hinzufügen.
Erstellung von Provisioning Profiles und Zertifikaten
Damit Ihre App auf dem Gerät läuft, benötigen Sie ein sogenanntes Provisioning Profile. Dieses Profile verknüpft Ihre App, Ihre Geräte und Zertifikate miteinander und erlaubt die Installation. Zuerst müssen Sie in Ihrem Apple Developer Account ein Entwicklungszertifikat erstellen oder ein bestehendes verwenden, welches Ihren Mac autorisiert, Apps zu signieren.
Danach legen Sie ein Provisioning Profile vom Typ iOS App Development an, fügen die registrierten Geräte hinzu und wählen das passende App-ID (Bundle Identifier) aus. Nach dem Erstellen laden Sie dieses Profil herunter und lassen es von Xcode automatisch verwalten oder fügen es manuell hinzu.
Vorbereitung in Xcode und App-Signierung
Öffnen Sie Ihr App-Projekt in Xcode. Unter den Projekteinstellungen (Targets > Signing & Capabilities) können Sie die automatische Verwaltung von Berechtigungen aktivieren, um Xcode die Provisioning Profiles und Zertifikate automatisch anlegen und aktualisieren zu lassen. Alternativ können Sie die Profile manuell verknüpfen.
Schließen Sie Ihr Gerät per USB an Ihren Mac an und wählen Sie es als Zielgerät in Xcode aus. Beim ersten Verbinden müssen Sie möglicherweise auf dem iPhone dem Computer vertrauen, indem Sie den Diesem Computer vertrauen Dialog bestätigen.
Installation und Test der App auf dem echten Gerät
Klicken Sie in Xcode auf den Run-Button (den Play-Button oben links). Xcode baut nun die App, signiert sie mit den eingerichteten Zertifikaten und installiert sie auf dem angeschlossenen Gerät. Falls es zu Sicherheitswarnungen kommt, z.B. dass der Entwickler nicht verifiziert ist, können Sie auf dem iPhone unter Einstellungen > Allgemein > Geräteverwaltung (oder Profile & Geräteverwaltung) dem Entwickler vertrauen.
Nach erfolgreicher Installation können Sie die App auf dem echten iPhone oder iPad starten und dort unter realen Bedingungen testen. Hier stehen Ihnen alle Funktionen des Geräts zur Verfügung, was besonders wichtig ist für Tests von hardwareabhängigen Features wie Kamera, GPS, Beschleunigungssensoren oder Push-Nachrichten.
Alternative Methoden und Dienste
Zusätzlich zum direkten Test via Xcode gibt es auch Dienste wie TestFlight, mit denen Sie Betaversionen Ihrer App an Tester verteilen können. Diese Methode ist ideal, um Tests auf mehreren Geräten durchzuführen, ohne dass die Nutzer über Xcode verfügen müssen. Die App wird dabei über den App Store bereitgestellt und muss den Review-Prozess durchlaufen.
Zusammenfassung
Das Testen einer iOS-App auf einem echten Gerät erfordert ein Apple Entwicklerkonto, die Registrierung des Geräts, das Erstellen von Zertifikaten und Provisioning Profiles sowie die Konfiguration von Xcode. Durch das Installieren der App über Xcode können Sie die Anwendung direkt auf Ihrem Gerät ausführen und so realitätsnahe Tests durchführen. Für umfangreichere Tests empfiehlt sich zudem der Einsatz von TestFlight.