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

Devam etmeden önce temel AR kavramlarını ve ARCore oturumunu nasıl yapılandıracağınızı anladığınızdan emin olun.

Burada açıklanan işlevselliği gösteren örnek bir uygulama çalıştırmak isterseniz iOS için ARCore Geospatial hızlı başlangıç kılavuzu'na bakın.

Geospatial API hakkında daha fazla bilgi için Geospatial API'ye giriş bölümüne bakın.

ARCore ile geliştirme konusunda yeniyseniz yazılım ve donanım gereksinimleri, ön koşullar ve kullandığınız platformlara özgü diğer bilgiler hakkında bilgi için Başlarken bölümüne bakın.

ARCore API'yi etkinleştir

Uygulamanızda Görsel Konumlandırma Sistemi'ni (VPS) kullanmadan önce, yeni veya mevcut bir Google Cloud projesinde ARCore API'yi etkinleştirmeniz gerekir. Bu hizmet, Coğrafi çapaların barındırılması, depolanması ve çözümlenmesinden sorumludur.

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

Gerekli kitaplıkları uygulamanıza ekleme

Uygulamanızı ARCore API'yi çağırmak üzere yetkilendirdikten sonra, uygulamanızda Coğrafi özellikleri etkinleştirmek için kitaplıklar eklemeniz gerekir.

Uygulamanızın Podfile sürümünü, ARCore SDK'sını ve desteklenen iOS sürümünü içerecek şekilde güncelleyin. Bunun için:

  1. Projenizin Podfile öğesine aşağıdaki platform ve pod değerlerini ekleyin:

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

    iOS 10'u desteklemek istiyorsanız platform :ios, '10.0' seçeneğini de belirtebilirsiniz ancak Geospatial API'nin yalnızca iOS >= 11 işletim sisteminde çalışacağını unutmayın.

  2. Bir Terminal penceresi açın ve Xcode projenizin bulunduğu klasörden pod install komutunu çalıştırın.

    Bu işlem, uygulamayı derlemek ve çalıştırmak için kullanacağınız bir .xcworkspace dosyası oluşturur.

Geliştirme ortamınızın Hızlı Başlangıç'da açıklandığı gibi ARCore SDK gereksinimlerini karşıladığından emin olun.

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

Cihaz uyumluluğunu kontrol etme

quickstart açıklandığı gibi, ARCore'u destekleyen tüm cihazlar, Geospatial API'yi de desteklemez.

Cihazı kontrol etmek için aşağıdaki gibi GARSession.isGeospatialModeSupported: aracını kullanı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;
}

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

Uygulamanız, oturumu yapılandırmadan önce çalışma zamanında aşağıdaki konum izinlerini istemelidir:

Cihazın mevcut konumundaki Coğrafi kullanılabilirliği kontrol edin

Geospatial API, Coğrafi dönüşümü belirlemek için VPS ve GPS'in bir kombinasyonunu kullandığından, cihaz konumunu belirleyebildiği sürece API kullanılabilir. API, kapalı alanlar ve yoğun kentsel ortamlar gibi GPS doğruluğunun düşük olduğu alanlarda yüksek doğruluklu dönüşümler oluşturmak için VPS'nin kapsamını kullanır. VPS'nin normal koşullarda yaklaşık 5 metre konum doğruluğu ve 5 derece dönme doğruluğu sağlaması beklenebilir. Belirli bir konumun VPS kapsamında olup olmadığını belirlemek için GARSession.checkVPSAvailabilityAtCoordinate:completionHandler: özelliğini kullanın.

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

Sırada ne var?