iOS'i hedefleyen Unity (AR Foundation) uygulamanız için Geospatial API'yi etkinleştirin

Uygulamanızın ayarlarını, Coğrafi API'yi kullanabileceği ş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.

Geospatial API hakkında daha fazla bilgi için Geospatial API'ye Giriş başlıklı makaleyi inceleyin.

ARCore ile geliştirmeye yeni başladıysanız yazılım ve donanım gereksinimleri, ön koşullar ve kullandığınız platformlara özgü diğer bilgiler için Başlangıç bölümüne bakın.

ARCore Geospatial API'yi kullanmak için projenizin AR Foundation ve AR Foundation için ARCore Uzantılar'ı desteklemesi gerekir.

ARCore API'yi etkinleştirme

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 yer işaretlerini barındırmaktan, depolamaktan ve çözmekten sorumludur.

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

Uygulamanıza gerekli kitaplıkları ekleme

Uygulamanızı ARCore API'yi çağıracak şekilde yetkilendirdikten sonra, uygulamanızda Coğrafi Özellikler'i etkinleştirmek için kitaplıklar eklemeniz gerekir.

  1. Düzenle > Proje Ayarları > XR Eklenti Yönetimi > ARCore Uzantılar'a gidin. iOS Desteği Etkin'in seçili olduğundan emin olun.
  2. İsteğe bağlı özellikler bölümünde Coğrafi'yi seçin.

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

Uygulamanızda Coğrafi İşlevsellik etkinleştirildikten sonra, ARCore API ile iletişim kurabilmesi için uygulamanızın AR oturumu yapılandırmasında Coğrafi İşlevsellik özelliklerini etkinleştirin:

  1. Projenin Öğeler klasöründe bir ARCoreExtensionsConfig komut dosyası yazılabilir nesnesi bulunduğundan emin olun. Oluşturmak için Öğeler bölmesini sağ tıklayın ve Oluştur > XR > ARCore Uzantı Yapılandırması'nı seçin.
  2. Öğeler klasörünüzde ARCoreExtensionsConfig komut dosyası yazılabilir nesnesini seçin ve Coğrafi Mod'u Etkin olarak ayarlayın.

  3. ARCore Extensions oyun nesnesini, ARCoreExtensionsConfig yapılandırmasını kullanacak şekilde yapılandırın. Hiyerarşi bölmesinde, ARCore Extensions'i ilk kez kurarken oluşturduğunuz ARCore Extensions oyun nesnesini bulun ve ARCore Extensions Config alanını Assets klasörünüzdeki ARCoreExtensionsConfig komut dosyası yazılabilir nesnesine bağlayın.

Kullanıcıdan cihaz verilerinin kullanılmasına izin vermesini isteme

ARCore Geospatial API'yi kullanan uygulamalar, kullanıcıya cihazındaki verilerin kullanımını kabul etmesini ve buna izin vermesini isteyen bir istem göstermelidir. Daha fazla bilgi için Kullanıcı gizliliği şartları başlıklı makaleyi inceleyin.

Cihaz uyumluluğunu kontrol etme

ARCore'u destekleyen tüm cihazlar Geospatial API'yi de desteklemez. Kullanıcının cihazının uyumluluğunu kontrol etmek için AREarthManager.IsGeospatialModeSupported() numaralı telefonu arayın. Bu işlem FeatureSupported.Unsupported döndürüyorsa oturumu yapılandırmayı denemeyin.

Çalışma zamanında kullanıcıdan konum izinleri isteme

Çalışma zamanı izin isteklerini tetikleyen bir komut dosyasında Unity'nin konum hizmetlerini etkinleştirmek için aşağıdakileri yapın:

  1. Project Settings > iOS > Other Settings > Location Usage Description alanına, izin isteyen uygulamanın adını girin.

  2. Aşağıdaki gibi çalışma zamanında izin isteğini tetiklemek için Unity'nin konum hizmetlerini etkinleştirin:

    public void OnEnable()
    {
        Input.location.Start();
    }
    
    public void OnDisable()
    {
        Input.location.Stop();
    }
    

    Daha fazla bilgi için Unity'nin LocationService belgelerine bakın.

Cihazın mevcut konumunda Coğrafi Veri Kullanımı'nın kullanılabilirliğini kontrol etme

Geospatial API, coğrafi konumlu bir pozu belirlemek için VPS ve GPS'ten alınan verileri birlikte kullandığından, cihaz konumunu belirleyebildiği sürece API kullanılabilir. Kapalı alanlar ve yoğun kentsel ortamlar gibi GPS doğruluğunun düşük olduğu yerlerde API, yüksek doğrulukta pozlar oluşturmak için VPS kapsamını kullanır. Normal koşullarda VPS'nin yaklaşık 5 metrelik konumsal doğruluk ve 5 derecelik dönme doğruluğu sağlaması beklenebilir. Belirli bir konumun VPS kapsamına girip girmediğini belirlemek için AREarthManager.CheckVpsAvailability() değerini kullanın.

Coğrafi API, VPS kapsamı olmayan alanlarda da kullanılabilir. Başınızın üzerinde çok az engel veya engel olmaması durumunda, yüksek doğrulukta bir poz oluşturmak için GPS yeterli olabilir.

Sırada ne var?