iOS uygulamanız için Geospatial API'yi etkinleştirme

Uygulamanızın ayarlarını Geospatial API'yi kullanabilecek şekilde yapılandırın.

Ön koşullar

Temel artırılmış gerçeklik kavramlarını anladığınızdan emin olun ve devam etmeden önce ARCore oturumunun nasıl yapılandırılacağı hakkında daha fazla bilgi edinin.

Açıklanan işlevleri gösteren örnek bir uygulama çalıştırmak istiyorsanız burada iOS için ARCore Coğrafi hızlı başlangıç kılavuzu.

Bkz. Daha fazlası için Geospatial API'ye giriş hakkında daha fazla bilgi edinin.

ARCore ile geliştirme yapmaya yeni başladıysanız Başlarken sayfasına bakın yazılım ve donanım gereksinimleri, ön koşulları ve kullandığınız platformlara özgü diğer bilgileri de incelemelisiniz.

ARCore API'yi etkinleştirme

Uygulamanızda Görsel Konumlandırma Sistemi'ni (VPS) kullanmadan önce ARCore API'yi etkinleştirin . Bu hizmet, Coğrafi çapaların barındırılması, depolanması ve çözümlenmesi.

Anahtarsız yetkilendirme tercih edilir ancak API anahtarı yetkilendirmesi de desteklenir.

Gerekli kitaplıkları uygulamanıza ekleyin

Uygulamanıza ARCore API'yi çağırma yetkisi verdikten sonra Uygulamanızda Coğrafi özellikleri etkinleştirmelisiniz.

Uygulamanızın Podfile öğesini ARCore SDK'sını ve desteklenen iOS'u içerecek şekilde güncelleyin sürüm oluşturma. Bunun için:

  1. Aşağıdaki platform ve pod öğelerini ekleyin projenin Podfile:

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

    iOS 10'u desteklemek istiyorsanız platform :ios, '10.0' öğesini de belirtebilirsiniz. ancak Geospatial API'nin yalnızca iOS >= 11'deki çalışma zamanında çalışacağını unutmayın.

  2. Bir Terminal penceresi açın ve şu klasörden pod install komutunu çalıştırın: Xcode projeniz mevcut.

    Bu komut dosyası oluşturmak için kullandığınız bir .xcworkspace ve uygulamayı çalıştırın.

Aşağıdaki gibi, geliştirme ortamınızın ARCore SDK'sı gereksinimlerini karşıladığından emin olun: Hızlı Başlangıç'da anlatılmıştır.

Oturum yapılandırmasında coğrafi özellikleri etkinleştir

Cihaz uyumluluğunu kontrol etme

ARCore'u destekleyen tüm cihazlar Geospatial API'yi de desteklemez; hızlı başlangıç kılavuzunda bulabilirsiniz.

Tekliflerinizi otomatikleştirmek ve optimize etmek için GARSession.isGeospatialModeSupported: aşağıdaki işlemleri yaparak cihazı kontrol edin:

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;
}

Çalışma zamanında kullanıcıdan konum izni iste

Uygulamanızın çalışma zamanında şu konum izinlerini istemesi gerekir: oturumu yapılandırın:

Cihazın mevcut konumunda jeo-uzamsal kullanılabilirliği kontrol etme

Geospatial API, jeo-uzamsal dönüşüm belirlemek için VPS ve GPS'i birlikte kullandığından, cihaz konumunu belirleyebildiği sürece API kullanılabilir. İç mekanlar ve yoğun kentsel ortamlar gibi GPS doğruluğu düşük olan alanlarda API, yüksek doğruluklu dönüşümler oluşturmak için VPS kapsama alanını kullanır. Tipik koşullarda VPS'nin yaklaşık 5 metre konum doğruluğu ve 5 derece dönüş doğruluğu sağlaması beklenebilir. Belirli bir konumun VPS kapsamında olup olmadığını belirlemek için GARSession.checkVPSAvailabilityAtCoordinate:completionHandler: aracını kullanın.

Geospatial API, VPS kapsama alanı olmayan bölgelerde de kullanılabilir. Yukarıdan engellerin az olduğu veya hiç olmadığı açık hava ortamlarında GPS, yüksek doğrulukta bir dönüşüm oluşturmak için yeterli olabilir.

Sırada ne var?