Geospatial API für Ihre iOS-App aktivieren

Konfigurieren Sie die Einstellungen Ihrer App so, dass die Geospatial API verwendet werden kann.

Voraussetzungen

Machen Sie sich mit den grundlegenden AR-Konzepten und zur Konfiguration einer ARCore-Sitzung vertraut, bevor Sie fortfahren.

Wenn Sie eine Beispiel-App ausführen möchten, die die hier beschriebene Funktionalität demonstriert, lesen Sie die Kurzanleitung zu ARCore Geospatial für iOS.

Weitere Informationen zur Geospatial API finden Sie in der Einführung in die Geospatial API.

Wenn du zum ersten Mal mit ARCore entwickelst, findest du unter Erste Schritte Informationen zu Software- und Hardwareanforderungen und Voraussetzungen sowie weitere Informationen zu den von dir verwendeten Plattformen.

ARCore API aktivieren

Bevor Sie das Visual Positioning System (VPS) in Ihrer App verwenden können, müssen Sie zuerst die ARCore API in einem neuen oder vorhandenen Google Cloud-Projekt aktivieren. Dieser Dienst ist für das Hosting, die Speicherung und die Auflösung von raumbezogenen Ankern verantwortlich.

Die schlüssellose Autorisierung wird bevorzugt, aber auch die Autorisierung über API-Schlüssel wird unterstützt.

Der App die erforderlichen Bibliotheken hinzufügen

Nachdem Sie Ihre App zum Aufrufen der ARCore API autorisiert haben, müssen Sie Bibliotheken hinzufügen, um raumbezogene Funktionen in Ihrer App zu aktivieren.

Aktualisiere die Podfile für deine App, um das ARCore SDK und die unterstützte iOS-Versionsverwaltung einzuschließen. Das geht so:

  1. Fügen Sie der Datei Podfile Ihres Projekts die folgenden platform und pod hinzu:

    platform :ios, '11.0'
    pod 'ARCore/Geospatial', '~> 1.41.0'
    

    Sie können auch platform :ios, '10.0' angeben, wenn Sie iOS 10 unterstützen möchten. Die Geospatial API funktioniert jedoch nur zur Laufzeit unter iOS 11.

  2. Öffnen Sie ein Terminalfenster und führen Sie pod install in dem Ordner aus, in dem sich Ihr Xcode-Projekt befindet.

    Dadurch wird eine .xcworkspace-Datei generiert, mit der Sie die Anwendung erstellen und ausführen.

Achte darauf, dass deine Entwicklungsumgebung die ARCore SDK-Anforderungen erfüllt, wie in der Kurzanleitung beschrieben.

Raumbezogene Funktionen in der Sitzungskonfiguration aktivieren

Gerätekompatibilität prüfen

Wie in der quickstart beschrieben, unterstützen nicht alle Geräte, die ARCore unterstützen, auch die Geospatial API.

Verwenden Sie GARSession.isGeospatialModeSupported:, um das Gerät so zu prüfen:

if (![self.garSession isGeospatialModeSupported:GARGeospatialModeEnabled]) {
  [self setErrorStatus:@"GARGeospatialModeEnabled is not supported on this device."];
  return;
}

GARSessionConfiguration *configuration = [[GARSessionConfiguration alloc] init];
configuration.geospatialMode = GARGeospatialModeEnabled;
[self.garSession setConfiguration:configuration error:&error];
if (error) {
  [self setErrorStatus:[NSString stringWithFormat:@"Failed to configure GARSession: %d",
                                                  (int)error.code]];
  return;
}

Nutzer während der Laufzeit um die Berechtigung zur Standortermittlung bitten

Ihre App muss zur Laufzeit die folgenden Berechtigungen zur Standortermittlung anfordern, bevor sie die Sitzung konfigurieren kann:

Raumbezogene Verfügbarkeit am aktuellen Standort des Geräts prüfen

Da die Geospatial API eine Kombination aus VPS und GPS zur Bestimmung einer raumbezogenen Transformation verwendet, kann die API verwendet werden, solange das Gerät seinen Standort bestimmen kann. In Gebieten mit geringer GPS-Genauigkeit, z. B. in Innenräumen und dicht bebauten städtischen Umgebungen, setzt die API auf eine VPS-Abdeckung, um Transformationen mit hoher Genauigkeit zu generieren. Unter typischen Bedingungen ist mit VPS eine Positionsgenauigkeit von etwa 5 Metern und eine Rotationsgenauigkeit von 5 Grad zu erwarten. Mit GARSession.checkVPSAvailabilityAtCoordinate:completionHandler: können Sie feststellen, ob an einem bestimmten Standort eine VPS-Abdeckung vorliegt.

Die Geospatial API kann auch in Regionen verwendet werden, in denen keine VPS-Abdeckung vorliegt. In Außenbereichen mit wenigen oder gar keinen Hindernissen über dem Kopf reicht das GPS unter Umständen aus, um eine Transformation mit hoher Genauigkeit zu generieren.

Nächste Schritte