Ausführen von iOS-Anwendungen auf einem iOS-Gerät

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Mobile iOS-Anwendungsentwicklung

Sie können Ihre Delphi- oder C++-iOS-App erst auf einem iOS-Gerät ausführen, wenn Sie die folgenden Schritte erfolgreich abgeschlossen haben:

Die folgenden Abbildungen zeigen eine konzeptuelle Darstellung des iOS-Entwicklungsprozesses, einschließlich der Verbindung zu einem iOS-Gerät:

Win2Mac2iOSDevice.png

Schritte zum Ausführen Ihrer App auf einem iOS-Gerät

Anschließen Ihres iOS-Gerätes an Ihren Mac über ein Apple-USB-Kabel
  1. Führen Sie den Platform Assistant auf dem Mac aus.
  2. Testen Sie die Verbindung zu Ihrem Mac (auf der Seite Verbindungsprofil-Manager).
  3. Schließen Sie ein iOS-Gerät (z. B. ein iPhone oder iPad) an den Mac mit dem Apple-Standard-USB-Kabel (siehe rechts) an.
    Hinweis: Ihre iOS-SDK-Version muss nicht mit der iOS-Geräteversion übereinstimmen. Sie können die neueste Version des iOS-SDK verwenden und Ihre Anwendung auf älteren von RAD Studio unterstützten iOS-Versionen ausführen. Sie sollten immer die neueste iOS-SDK-Version verwenden.
  4. In RAD Studio:
    1. Erweitern Sie in der Projektverwaltung den Knoten Zielplattformen, und doppelklicken Sie auf die iOS-Gerätezielplattform, die zur Architektur Ihres Gerätes passt, entweder iOS-Gerät - 32 Bit oder iOS-Gerät - 64 Bit. Die ausgewählte Zielplattform wird in Fettschrift angezeigt.
    2. Erweitern Sie im Knoten Zielplattformen den ausgewählten iOS-Geräteknoten, erweitern Sie den Knoten Konfiguration, und doppelklicken Sie auf die Plattformkonfiguration Entwicklung, um sie auszuwählen. Die ausgewählte Plattformkonfiguration wird in Fettschrift angezeigt.
      Hinweis: Bei der Plattformkonfiguration Anwendungs-Store können Sie Anwendungen nicht direkt von RAD Studio aus auf einem iOS-Gerät ausführen. Um für den App Store erzeugte Apps auszuführen, müssen Sie sie an den App Store übermitteln und sie aus dem Store installieren.
    3. Führen Sie die App entweder mit Debugger (Start > Start) oder ohne Debugger (Start > Ohne Debugger ausführen) aus.

RAD Studio erzeugt Ihre App mit dem SDK, das Sie zuvor in der IDE hinzugefügt haben, stellt eine Verbindung zu Ihrem Mac mit dem Verbindungsprofil her, das Sie für die Zielplattform "iOS-Gerät" konfiguriert haben, und der Platform Assistant auf dem Mac ruft Ihre Anwendung auf dem angeschlossenen iOS-Gerät auf.

Hinweise:
  • Bei der erstmaligen Verwendung eines Benutzerkontos auf dem Mac zum Ausführen einer Anwendung auf einem iOS-Gerät werden Sie aufgefordert, RAD Studio zu gestatten, Anwendungen mit Ihrem privaten Schlüssel zu signieren. Sie müssen dies auf dem Mac akzeptieren, damit RAD Studio Ihre Anwendung weiter auf dem iOS-Gerät ausführen kann.
  • Beim Aufrufen Ihrer App auf Ihrem iOS-Gerät könnte der Eindruck entstehen, dass RAD Studio eingefroren ist, aber es wird nur die Ausführung der App vorbereitet.

Ausführen der Anwendung mit bereinigten Daten- und Zwischenspeicherordnern

Beim Ausführen einer Anwendung auf einem iOS-Gerät installiert RAD Studio Ihre Anwendung auf dem Gerät mit dem CFBundleIdentifier-Wert, den Sie auf den Versionsinformationen-Optionsseiten festgelegt haben, um Ihre Anwendung eindeutig zu kennzeichnen. Der CFBundleIdentifier-Wert lautet per Vorgabe "$(ModuleName)"; $(ModuleName) ist der Name Ihres Projekts, wie z. B. "Project1".

Wenn Sie Ihre Anwendung auf einem Gerät ausführen, das bereits eine früher installierte Anwendung mit demselben CFBundleIdentifier-Wert enthält, wird mit dem Befehl "Start" Ihre Anwendung neu installiert, aber es wird nur die ausführbare Datei aktualisiert; die Daten- und Zwischenspeicherordner Ihrer Anwendung werden nicht aktualisiert.

So konfigurieren Sie RAD Studio, damit mit den Aktionen Ohne Debugger ausführen und Start vor der Installation der neueren Version alle zuvor installierten Versionen Ihrer Anwendung, einschließlich der Daten- und Zwischenspeicherordner, vollständig deinstalliert werden:

  1. Wählen Sie Start > Parameter.
  2. Geben Sie in das Feld Parameter "-cleaninstall" ein:
    RunParametersCleanInstall.png
  3. Klicken Sie zum Speichern der Änderungen auf OK.

Fehlerbehebung

Bei "Zeitüberschreitung beim Verbinden mit Gerät" schließen Sie Ihr iOS-Gerät an den Mac an

Wenn Ihr iOS-Gerät nicht angeschlossen ist, wird nach dem Versuch, Ihre App auf einem iOS-Gerät aufzurufen, die folgende Meldung in der IDE angezeigt:

 Device connection timeout

Führen Sie Folgendes aus, wenn diese Meldung angezeigt wird:

  1. Schließen Sie die Meldung.
  2. Schließen Sie Ihr iOS-Gerät mit einen Apple-USB-Kabel (siehe oben) an den Mac an.
  3. Rufen Sie Ihre App erneut von der IDE aus auf. Siehe die obigen Schritte.
Hinweis: Im Befehlszeilenprogramm PAServer können Sie mit dem Befehl -devicetimeout=<n> ein Zeitlimit für die Verbindung mit dem Gerät festlegen. Durch das Festlegen eines Zeitlimits wird das Problem, das von einem fehlenden Gerät herrührt, jedoch nicht behoben.

"Mit Info für angeschlossenes Gerät übereinstimmendes DeviceSupport-Verzeichnis nicht gefunden"

Wenn Sie die iOS-Version Ihres Gerätes kürzlich aktualisiert haben, könnten Sie beim Versuch, Ihre App auf Ihrem iOS-Gerät auszuführen, die obige Fehlermeldung erhalten. Führen Sie Folgendes aus, wenn diese Meldung angezeigt wird:

  1. Schließen Sie die Meldung.
  2. Öffnen Sie auf dem Mac Xcode.
  3. Wählen Sie Window > Organizer, und überprüfen Sie, ob Xcode Ihr Gerät erkennt:
    • Wenn Ihr Gerät von Xcode erkannt wird, importieren Sie mit Xcode die Supportinformationen Ihres Geräts erneut, und versuchen Sie, Ihre Anwendung von RAD Studio aus auszuführen.
    • Wenn Xcode Ihr Gerät nicht erkennt, müssen Sie Xcode aktualisieren.
      Hinweis: Wenn Xcode Ihr Gerät nicht erkennt, Sie aber Xcode auf dem Mac nicht aktualisieren möchten, können Sie alternativ versuchen, Ihr Gerät an einen anderen Mac mit einer aktualisierten Version von Xcode, die Ihr Gerät erkennt, anzuschließen. Nach dem Import der Supportinformationen Ihres Geräts durch eine neuere Version von Xcode kann eine ältere Version von Xcode Ihr aktualisiertes iOS-Gerät möglicherweise auch erkennen.

Auf dem iOS-Gerät wird nichts angezeigt

Wenn Sie die Schritte zum Ausführen Ihrer App auf einem iOS-Gerät befolgt haben und die App nicht auf dem iOS-Gerät angezeigt wird, überprüfen Sie Folgendes:

  • Der Platform Assistant muss auf dem Mac ausgeführt werden. Siehe Ausführen des Platform Assistant auf dem Mac:
  • In RAD Studio muss das Verbindungsprofil, das der ausgewählten iOS-Gerätezielplattform (iOS-Gerät - 32 Bit oder iOS-Gerät - 64 Bit) zugeordnet ist, eine Verbindung mit der Zielinstanz des "Platform Assistant" herstellen.
    • Unter Aktivieren und Konfigurieren der Zielplattform finden Sie Anleitungen zur Konfiguration des der iOS-Gerätezielplattform zugeordneten Verbindungsprofils in Ihrem Projekt.
    • Auf der Seite {{Menu|Tools > Optionen > Umgebungsoptionen > Verbindungsprofil-Manager:
      • Wählen Sie aus der linken Spalte (in der die nach Plattform gruppierten Verbindungsprofile aufgeführt sind) das Verbindungsprofil aus, das der Zielplattform "iOS-Gerät" zugeordnet ist.
      • Überprüfen Sie die Werte dieses Verbindungsprofils, z. B. die IP-Adresse (muss die IP-Adresse Ihres Mac sein) und die Port-Nummer (muss die Port-Nummer des "Platform Assistant" sein).
      • Klicken Sie auf Verbindung testen, um sicherzustellen, dass Ihr Entwicklungs-PC über eine funktionierende Verbindung zu dem auf dem Mac ausgeführten "Platform Assistant" verfügt.

Meine App hält an Haltepunkten nicht mehr an

Nach einem Absturz während einer Debug-Sitzung auf einem iOS-Gerät, kann es vorkommen, dass die nächsten Debug-Sitzungen auf Ihrem iOS-Gerät nicht mehr funktionieren.

Gehen Sie folgendermaßen vor, wenn beim Ausführen Ihrer Anwendung mit Debug-Symbolen, die Anwendung bei keinen Haltepunkten mehr anhält:

  1. Rufen Sie auf Ihrem Mac Xcode auf.
  2. Erstellen Sie in Xcode eine neue iOS-Anwendung.
  3. Wählen Sie bei geöffneter Xcode-iOS-Anwendung iOS-Gerät als Ziel aus.
    XcodeIosDeviceTarget.png
  4. Klicken Sie auf Run, halten Sie die Maustaste gedrückt, und wählen Sie aus dem angezeigten Kontextmenü Analyze aus.
    XcodeAnalize.png

Sie können Xcode jetzt schließen und mit dem Debuggen Ihrer RAD Studio-Anwendungen auf dem iOS-Gerät fortfahren.

[DCC-Fehler] E2597 NYI lto::archName

ld: file was built for unsupported file format ( <sequence of hexadecimal values> ) which is not the architecture being linked (armv7): C:\Users\<Benutzer>\Documents\Embarcadero\Studio\SDKs\iPhoneOS7.1.sdk/usr/lib/libiconv.dylib for architecture armv7

Dieser Fehler tritt bei dem Versuch auf, eine Anwendung für die Zielplattform iOS-Gerät - 32 Bit mit der Version 7.1 des iOS-SDK zu erzeugen. RAD Studio unterstützt keine Versionen des iOS-SDK unter 8.0. Stellen Sie sicher, dass die neueste Version von Xcode auf Ihrem Mac installiert ist, und fügen Sie RAD Studio ein unterstütztes iOS-SDK hinzu.

[DCC-Fehler] E2597 ld: Datei wurde für armv7 erzeugt

[DCC Error] E2597 ld: file was built for armv7 which is not the architecture being linked (arm64): C:\Users\<Benutzer>\Documents\Embarcadero\Studio\SDKs\iPhoneOS7.0.sdk/usr/lib/libiconv.dylib for architecture arm64

Dieser Fehler tritt bei dem Versuch auf, eine Anwendung für die Zielplattform iOS-Gerät - 64 Bit mit der Version 7.0 des iOS-SDK zu erzeugen. RAD Studio unterstützt keine Versionen des iOS-SDK unter 8.0. Stellen Sie sicher, dass die neueste Version von Xcode auf Ihrem Mac installiert ist, und fügen Sie RAD Studio ein unterstütztes iOS-SDK hinzu.

Synchronisieren von Xcode mit einem iOS-Gerät

Sie müssen sicherstellen, dass das auf dem Mac installierte Xcode die iOS-Version auf dem iOS-Gerät unterstützt und dass beide miteinander synchronisiert sind. Anhand der folgenden Schritte können Sie Xcode auf dem Mac und Ihrem iOS-Gerät synchronisieren:

  1. Trennen Sie die Verbindung Ihres iOS-Geräts mit dem Mac.
  2. Öffnen Sie Xcode auf Ihrem Mac.
  3. Wählen Sie im Hauptmenü Fenster, Geräte aus.
  4. Schließen Sie Ihr iOS-Gerät wieder an den Mac an.
  5. Wählen Sie im Fenster Geräte auf der linken Seite Ihr iOS-Gerät aus.
  6. Warten Sie, bis der Ladecursor OSX Loader Wheel.png ausgeblendet wird. Danach können Sie Xcode schließen und erneut versuchen, die Anwendung zu debuggen.

Meine App stürzt ab

Ihre Anwendung stürzt möglicherweise auf Ihrem iOS-Gerät ab, wenn Sie sie mit einer höheren iOS-SDK-Version erzeugt haben, als der iOS-Version, die auf Ihrem Gerät ausgeführt wird. Wenn Sie Ihre Anwendung beispielsweise mit der Version 9 des iOS-SDK erzeugt haben, und Sie sie auf einem Gerät mit iOS 8 ausführen, kann die Anwendung möglicherweise abstürzen. Falls dies zutrifft, ändern Sie das iOS-SDK, das RAD Studio für die Erzeugung Ihrer iOS-Anwendung verwendet.

Siehe auch