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:
- İç mekanlar ve yoğun kentsel ortamlar gibi GPS doğruluğunun düşük olduğu alanlarda API, yüksek doğruluklu dönüşümler oluşturmak için VPS kapsama alanını kullanır.
- Baş üstü engellerin az olduğu veya hiç olmadığı dış mekan ortamlarında, Geospatial API 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 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
VPS'nin kullanılabilirliğini kontrol etmek için uygulamanızda ARCore API'nin etkinleştirilmesi gerekir.
Uygulamanızdaki VPS'lerin kullanılabilirliğini kontrol edin
Geospatial API, cihazın konumunu belirleyebildiği her yerde kullanılabilir. Artırılmış gerçeklik (AR) deneyiminiz VPS kapsamına bağlıysa VPS'nin belirli bir yatay konumdaki kullanılabilirliğini kontrol eden eşzamansız bir görev olan GARVPSAvailabilityFuture
için GARSession#checkVPSAvailabilityAtCoordinate:completionHandler:
'ı kullanabilirsiniz.
GARVPSAvailabilityFuture
edinildikten sonra anket veya geri arama yoluyla sonucu alabilirsiniz.
Sonuç anketi
Future
durumunu almak için GARFuture.state
işlevini kullanın. Üç farklı eyalet vardır:
GARFutureStatePending
: İşlem henüz tamamlanmadığı için bilinmiyor.GARFutureStateCancelled
: İşlemGARFuture#cancel
tarafından iptal edildi. Kayıtlı geri 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
aracını kontrol etmeye devam edebilirsiniz.
Geri çağırma ile sonucu 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.
Geospatial API'yi VPS kapsamı olmadan kullanma
Geospatial API, VPS kapsama alanı olmayan bölgelerde de kullanılabilir. Baş üstü engellerin az olduğu veya hiç olmadığı açık hava ortamlarında GPS, yüksek doğrulukta bir poz oluşturmak için yeterli olabilir.
Sırada ne var?
- Kullanıcının cihazının gerçek dünyadaki tam konumunu belirlemek için cihaz kamerasının coğrafi duruşunu alın.