Die ältere ARCore Cloud Anchor API wurde eingestellt und wird nach dem 31. August 2023 nicht mehr unterstützt. Wenn Ihre App diese API verwendet, müssen Sie sie so bald wie möglich aktualisieren, sodass der neue ARCore API-Endpunkt verwendet wird.

Kurzanleitung für Cloud Anchors in iOS

Die ARCore Cloud Anchor API (oder ARCore Cloud Anchor-Dienst) bietet Cloud-Anchor-Funktionen für Ihre iOS-Apps, sodass Nutzer auf iOS- und Android-Geräten AR-Erfahrungen teilen können.

Der Leitfaden zeigt euch, wie ihr:

  • Entwicklungsumgebung für die Arbeit mit Cloud Anchors einrichten
  • Anker in einer Beispiel-App hosten und auflösen

Voraussetzungen

Zur Verwendung von Cloud Anchors benötigen Sie Folgendes:

  • Xcode-Version 10.1 oder höher

  • CocoaPods 1.4.0 oder höher

  • Ein ARKit-kompatibles Apple-Gerät mit iOS 11.0 oder höher (Bereitstellungsziel von iOS 10.0 oder höher erforderlich)

Cloud Anchors verwenden

In den folgenden Schritten werden die Cloud Anchors-Beispielanwendung verwendet, um die kritischen Aufgaben zum Konfigurieren und Erstellen einer Anwendung zu sehen, die ARCore Cloud Anchors unterstützt.

Cloud Anchor-Beispielanwendung herunterladen

  1. Klonen Sie das ARCore SDK for iOS oder laden Sie es von GitHub herunter, um den Beispielcode der App abzurufen.

  2. Öffnen Sie ein Terminal- oder Finder-Fenster und wechseln Sie zu dem Ordner, in dem Sie das SDK geklont oder heruntergeladen haben.

  3. Den Beispielcode finden Sie in
    /arcore-ios-sdk-master/Examples/CloudAnchorExample.

    Der Beispielcode für Persistent Cloud Anchors befindet sich in
    /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample.

Sitzungseinrichtung

Die Beispielanwendung führt beim Einrichten der Sitzung die folgenden wichtigen Aufgaben aus:

Freigabe der Cloud-Anker-ID einrichten

Die Beispielanwendung von Cloud Anchors verwendet Firebase, um Cloud Anchor-IDs zwischen Geräten zu teilen. Sie können in Ihren eigenen Apps eine andere Lösung verwenden.

So richten Sie die Firebase-Datenbank in der Beispiel-App ein:

  1. Folgen Sie der Firebase-Anleitung zum Hinzufügen von Firebase zu einer App.
  2. Lade die Datei GoogleService-Info.plist herunter, die beim Hinzufügen von Firebase zu deiner App generiert wird.
  3. Aktivieren Sie Firebase-Speicher für das Beispiel:
    • Rufen Sie die Firebase Console auf und wählen Sie das Projekt aus, das Sie für die Beispiel-App eingerichtet haben.
    • Wählen Sie das Steuerfeld „Database“ aus.
    • Klicken Sie bei der Option Realtime Database auf Get Started.
    • Das Menü Security rules for Realtime Database wird geöffnet.
      • Wählen Sie zum Ausführen der Stichprobe Start in test mode aus.
      • Hinweis: Wenn Sie Firebase für eine App verwenden, die Sie veröffentlichen möchten, sollten Sie strengere Sicherheitsregeln verwenden.
  4. Füge in Xcode die Datei GoogleService-Info.plist neben Info.plist hinzu.

API-Schlüssel hinzufügen

Um Cloud Anchors verwenden zu können, müssen Sie der App einen API-Schlüssel hinzufügen.

  1. Erstellen Sie einen API-Schlüssel. Informationen zur Verwendung von API-Schlüsseln finden Sie in der Google Cloud Platform Console-Hilfe unter API-Schlüssel einrichten.

  2. Aktivieren Sie die ARCore Cloud Anchor API für Ihr Google Cloud Platform-Projekt.

  3. Füge in Xcode deinen API-Schlüssel der App hinzu. Fügen Sie dazu den Schlüssel in den folgenden Code in CloudAnchorManager.m ein:

    self.gSession = [GARSession sessionWithAPIKey:@"Replace me with your API key."
                                 bundleIdentifier:nil
                                            error:nil];
    

Pod-Update ausführen

Die App CloudAnchorExample wird mit einer Podfile ausgeliefert, die mit dem von Ihnen benötigten ARCore SDK und iOS-Versionen vorkonfiguriert ist. So installieren Sie die Abhängigkeiten:

  1. Öffnen Sie ein Terminalfenster und führen Sie pod update in dem Ordner aus, in dem sich das Xcode-Projekt befindet.
    Dadurch wird eine .xcworkspace-Datei generiert, die du später zum Erstellen und Ausführen der Anwendung verwendest.

Weitere Informationen zum Konfigurieren von Podfile in Ihren eigenen Apps finden Sie unter ARCore SDK in Apps einbinden.

  1. Öffne die Datei .xcworkspace für das Projekt in Xcode.

    Achten Sie darauf, die Build-Datei auf Basis der Datei .xcworkspace und nicht der Datei .xcodeproj zu erstellen, um Build-Fehler zu vermeiden.

App Bundle-ID ändern

Ändern Sie in Xcode die Bundle-ID der App, damit Sie sie mit Ihrem Team signieren können.

App erstellen und ausführen

  1. Verbinden Sie Ihr Gerät und starten Sie die App in Xcode.

  2. Optional: Wenn Sie die Beispielanwendung erstellen und ausführen, finden Sie weitere Informationen zur Verwendung der Anwendung zum Hosten und Auflösen von Cloud Anchors im folgenden Abschnitt.

Beispiel-App testen

  1. Erstellen Sie die Beispielanwendung und führen Sie sie aus der Datei .xcworkspace aus, um sie auf Ihrem Gerät zu starten.

  2. Wenn Sie dazu aufgefordert werden, gewähren Sie der App Kameraberechtigungen. ARKit erkennt dann Ebenen vor Ihrer Kamera.

  3. Tippe auf HOST, um den Hostingmodus zu aktivieren. Es wird ein Zimmercode zum Teilen gehosteter Anker generiert, der auf Ihrem Bildschirm angezeigt wird.

  4. Tippen Sie auf ein Flugzeug, um dort einen Anker zu hosten.

    • Über die App wird ein Andy-Android-Objekt auf dem Flugzeug platziert und ein Anker daran befestigt.
    • Eine Hostanfrage wird an die ARCore Cloud Anchor API gesendet. Die Hostanfrage enthält Daten, die die Position des Ankers relativ zu den visuellen Elementen in der Nähe darstellen.
    • Sobald der Anker gehostet wird, wird eine ID abgerufen, mit der Cloud-Anchors in diesem Space aufgelöst werden.
  5. Tippen Sie auf RESOLVE und geben Sie einen Raumcode ein, um über dasselbe oder ein anderes Gerät auf zuvor gehostete Cloud Anchors für diesen Chatroom zuzugreifen.

    • Eine Klärungsanfrage wird an die ARCore Cloud Anchor API gesendet.
    • Die Auflösungsanfrage enthält eine Cloud-Anchor-ID. Wenn die ID mit einem gehosteten Anker übereinstimmt und die Lokalisierung erfolgreich ist, gibt der Server die Transformation des Ankers in Ihren lokalen Koordinaten zurück.
    • Die Beispielanwendung verwendet die Transformation, um den Anker zur Szene hinzuzufügen und damit verknüpfte virtuelle Objekte zu rendern.

ARCore SDK in Apps einbinden

In deinen eigenen Apps musst du dein Podfile so aktualisieren, dass es das ARCore SDK und die unterstützte iOS-Version enthält. Das geht so:

  1. Füge dem Projekt Podfile die folgenden platform und pod hinzu:

        platform :ios, '11.0'
        pod 'ARCore/CloudAnchors', '~> 1.33.0'
    
  1. Öffnen Sie ein Terminalfenster und führen Sie pod update in dem Ordner aus, in dem sich Ihr Xcode-Projekt befindet.
    Dadurch wird eine .xcworkspace-Datei generiert, die Sie zum Erstellen und Ausführen der Anwendung verwenden.

Persistente Cloud-Anchors

Wie unter Cloud-Anker mit Persistenz hosten beschrieben, können Sie für den Cloud-Anker eine Gültigkeitsdauer von bis zu 365 Tagen festlegen. Beispielcode zum Verwenden von nichtflüchtigen Cloud-Anchors ist im Verzeichnis /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample im ARCore SDK for iOS von GitHub verfügbar.

Weitere Informationen