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:
- 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.
- Geospatial API, yukarıdan engellerin çok az olduğu veya hiç olmadığı dış ortamlarda, yüksek doğrulukla Coğrafi dönüşümler oluşturmak için mevcut GPS konum verilerini kullanabilir.
AR oturumu başlamadan önce belirli bir yatay konumda VPS'nin kullanılabilirliğini belirleyebilir ve daha spesifik deneyimler oluşturmak için (örneğin, yalnızca VPS kullanılabilir olduğunda "AR'ye Gir" düğmesi sunmak için) kullanabilirsiniz.
ARCore API'yi etkinleştir
VPS'nin kullanılabilirliğini kontrol etmek için uygulamanız ARCore API'sini etkinleştirmelidir.
Uygulamanızda VPS kullanılabilirliğini kontrol edin
Geospatial API, cihazın konumunu belirleyebildiği her yerde kullanılabilir. Artırılmış gerçeklik deneyiminiz VPS kapsamına dayanıyorsa GARSession#checkVPSAvailabilityAtCoordinate:completionHandler:
aracını kullanarak bir GARVPSAvailabilityFuture
elde edebilirsiniz. Bu, belirli bir yatay konumdaki VPS kullanılabilirliğini kontrol eden eşzamansız bir görevdir.
GARVPSAvailabilityFuture
oluşturduktan sonra anketin sonucunu yoklama veya geri çağırma yoluyla elde edebilirsiniz.
Sonucu anketle
Future
durumunu almak için GARFuture.state
kodunu kullanın. Üç farklı durum vardır:
GARFutureStatePending
: İşlem henüz tamamlanmadığından bilinmiyor.GARFutureStateCancelled
: İşlemGARFuture#cancel
tarafından iptal edildi. Kayıtlı geri arama aramaları hiçbir zaman çağrılmaz.GARFutureStateDone
: İşlem tamamlandı. Sonucu almak içinGARVPSAvailabilityFuture.result
işlevini kullanın.
Görev tamamlanana kadar GARFuture.state
simgesini kontrol etmeye devam edebilirsiniz.
Geri arama yoluyla sonucu elde etme
Future
işleminin sonucunu geri çağırma yoluyla da alabilirsiniz. GARSession#checkVPSAvailabilityAtCoordinate:completionHandler:
kullanın ve bir completionHandler
sağlayın. Bu completionHandler
, Future
durumu GARFutureStateDone
olduğunda ana ileti dizisinde çağrılacak.
Future
aboneliğini iptal et
Future
aboneliğini iptal etmeyi denemek için GARFuture#cancel
numarasını kullanın. İleti dizisi benzerliği nedeniyle, iptal girişiminizin gerçekten başarılı olmaması mümkündür.
GARFuture#cancel
, bu deneme başarılıysa YES
değerini, aksi takdirde NO
değerini döndürür.
Geospatial API'yi VPS kapsamı olmadan kullanma
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 poz oluşturmak için yeterli olabilir.
Sırada ne var?
- Kullanıcı cihazının gerçek dünyadaki kesin konumunu belirlemek için cihaz kamerasının coğrafi pozisyonunu alın.