Establece la configuración de tu app para que pueda usar la API de Geospatial.
Requisitos previos
Asegúrate de comprender los conceptos fundamentales de RA y cómo configurar una sesión de ARCore antes de continuar.
Si quieres ejecutar una app de ejemplo que demuestre la funcionalidad que se describe aquí, consulta la Guía de inicio rápido de ARCore Geospatial para iOS.
Consulta la Introducción a la API de Geospatial para obtener más información información sobre la API de Geospatial.
Si es la primera vez que desarrollas con ARCore, consulta Primeros pasos. para obtener información sobre requisitos de software y hardware, requisitos más información específica de las plataformas que utilizas.
Habilita la API de ARCore
Antes de usar el sistema de posicionamiento visual (VPS) en tu aplicación, primero debes Habilita la API de ARCore. en un proyecto de Google Cloud nuevo o existente. Este servicio es responsable alojar, almacenar y resolver anclas geoespaciales.
Se prefiere la autorización sin clave, aunque también se admite la autorización de la clave de API.
Agrega las bibliotecas requeridas a tu app
Después de autorizar tu app para que llame a la API de ARCore, debes agregar bibliotecas a Habilita las funciones geoespaciales en tu app.
Actualiza el archivoPodfile
de tu app para que incluya el SDK de ARCore y los dispositivos iOS compatibles.
y el control de versiones. Para ello, sigue estos pasos:
Agrega los siguientes
platform
ypod
a tuPodfile
del proyecto:platform :ios, '11.0' pod 'ARCore/Geospatial', '~> 1.45.0'
También puedes especificar
platform :ios, '10.0'
si deseas admitir iOS 10. pero ten en cuenta que la API de Geospatial solo funcionará durante el tiempo de ejecución en iOS >= 11.Abre una ventana de terminal y ejecuta
pod install
desde la carpeta en la que que exista tu proyecto de Xcode.Esto genera un archivo
.xcworkspace
que usarás para compilar y para ejecutar la app.
Asegúrate de que tu entorno de desarrollo cumpla con los requisitos del SDK de ARCore, como que se describe en la guía de inicio rápido.
Habilita las capacidades geoespaciales en la configuración de la sesión
Comprueba la compatibilidad de los dispositivos
No todos los dispositivos compatibles con ARCore también admiten la API de Geospatial, ya que se describe en la guía de inicio rápido.
Usa
GARSession.isGeospatialModeSupported:
para verificar el dispositivo, como se muestra a continuación:
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;
}
Solicita permisos de ubicación al usuario durante el tiempo de ejecución
Tu app debe solicitar los siguientes permisos de ubicación durante el tiempo de ejecución, antes de configurar la sesión:
kCLAuthorizationStatusAuthorizedWhenInUse
CLAccuracyAuthorizationFullAccuracy
(se aplica cuando iOS >= 14)
Comprueba la disponibilidad de datos geoespaciales en la ubicación actual del dispositivo
Debido a que la API de Geospatial usa una combinación de VPS y GPS para determinar una transformación geoespacial, la API se puede usar siempre y cuando el dispositivo pueda determinar su ubicación. En áreas con baja precisión de GPS, como espacios interiores y entornos urbanos densos, la API dependerá de la cobertura del VPS para generar transformaciones de alta precisión. En condiciones típicas, se espera que el VPS proporcione una precisión posicional de aproximadamente 5 metros y una precisión de rotación de 5 grados. Usa GARSession.checkVPSAvailabilityAtCoordinate:completionHandler:
para determinar si una ubicación determinada tiene cobertura de VPS.
La API de Geospatial también se puede usar en áreas que no tienen cobertura VPS. En entornos al aire libre con pocas obstrucciones elevadas o ninguna, el GPS puede ser suficiente para generar una transformación con alta precisión.
¿Qué sigue?
- Obtén la transformación geoespacial de la cámara del dispositivo para determinar la ubicación exacta del dispositivo del usuario en el mundo real.
- Verifica la disponibilidad de VPS en la ubicación específica de un dispositivo.