Cihazın mevcut konumunda VPS kullanılabilirliğini kontrol edin

Geospatial API, yüksek doğrulukta Coğrafi dönüşümler oluşturmak için VPS ve GPS verilerinin bir kombinasyonunu kullanır. API, cihazın konumunu belirleyebildiği her yerde kullanılabilir:

  • Kapalı alanlar ve yoğun kentsel ortamlar gibi GPS doğruluğunun düşük olduğu yerlerde API, yüksek doğrulukta dönüştürme işlemleri oluşturmak için VPS kapsamını kullanır.
  • Üzerinde çok az engel bulunan veya hiç engel bulunmayan dış mekan ortamlarında Geospatial API, yüksek doğrulukta coğrafi dönüşümler oluşturmak için mevcut GPS konum verilerini kullanabilir.

AR oturumu başlamadan önce belirli bir yatay konumdaki VPS'nin kullanılabilirliğini belirleyebilir ve daha spesifik deneyimler oluşturmak (ör. "AR'ye girmek") için kullanabilirsiniz. düğmesi yalnızca VPS mevcut olduğunda.

ARCore API'yi etkinleştirme

Uygulamanız, VPS kullanılabilirliğini kontrol etmek için ARCore API'yi etkinleştirmelidir.

Uygulamanızdaki VPS'lerin kullanılabilirliğini kontrol edin

Geospatial API, cihazın konumunu belirleyebildiği her yerde kullanılabilir. AR deneyiminiz VPS kapsamına bağlıysa belirli bir yatay konumda VPS kullanılabilirliğini kontrol eden bir eşzamansız görev olan GARVPSAvailabilityFuture almak için GARSession#checkVPSAvailabilityAtCoordinate:completionHandler: kullanabilirsiniz. GARVPSAvailabilityFuture edinildikten sonra anket veya geri arama yoluyla sonucu alabilirsiniz.

Anket sonucu

Future durumunu almak için GARFuture.state işlevini kullanın. Üç farklı durum vardır:

  • GARFutureStatePending: İşlem henüz tamamlanmadığı için bilinmiyor.
  • GARFutureStateCancelled: İşlem GARFuture#cancel tarafından iptal edildi. Kayıtlı geri aramalar hiçbir zaman çağrılmaz.
  • GARFutureStateDone: İşlem tamamlandı. Sonucu almak için GARVPSAvailabilityFuture.result işlevini kullanın.

Görev tamamlanana kadar GARFuture.state aracını kontrol etmeye devam edebilirsiniz.

Sonucu geri arama yoluyla alma

Future sonucunu öğrenmek için geri arama özelliğini de kullanabilirsiniz. GARSession#checkVPSAvailabilityAtCoordinate:completionHandler: kullanın ve bir completionHandler sağlayın. Bu completionHandler, Future GARFutureStateDone durumuna sahip olduktan kısa bir süre sonra Ana iş parçacığında çağrılır.

Future aboneliğini iptal et

Future aboneliğini iptal etmeyi denemek için GARFuture#cancel öğesini kullanın. İş parçacığındaki paralellik nedeniyle, iptal denemeniz gerçekten başarılı olmayabilir. GARFuture#cancel, bu deneme başarılı olduysa YES, aksi takdirde NO değerini döndürür.

Coğrafi API'yi VPS kapsama alanı olmadan kullanma

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

Sırada ne var?