Uygulamanızın ayarlarını Geospatial API'yi kullanabilecek şekilde yapılandırın.
Ön koşullar
Temel artırılmış gerçeklik kavramlarını anladığınızdan emin olun ve devam etmeden önce ARCore oturumunun nasıl yapılandırılacağı hakkında daha fazla bilgi edinin.
Açıklanan işlevleri gösteren örnek bir uygulama çalıştırmak istiyorsanız burada iOS için ARCore Coğrafi hızlı başlangıç kılavuzu.
Bkz. Daha fazlası için Geospatial API'ye giriş hakkında daha fazla bilgi edinin.
ARCore ile geliştirme yapmaya yeni başladıysanız Başlarken sayfasına bakın yazılım ve donanım gereksinimleri, ön koşulları ve kullandığınız platformlara özgü diğer bilgileri de incelemelisiniz.
ARCore API'yi etkinleştirme
Uygulamanızda Görsel Konumlandırma Sistemi'ni (VPS) kullanmadan önce ARCore API'yi etkinleştirin . Bu hizmet, Coğrafi çapaların barındırılması, depolanması ve çözümlenmesi.
Anahtarsız yetkilendirme tercih edilir ancak API anahtarı yetkilendirmesi de desteklenir.
Gerekli kitaplıkları uygulamanıza ekleyin
Uygulamanıza ARCore API'yi çağırma yetkisi verdikten sonra Uygulamanızda Coğrafi özellikleri etkinleştirmelisiniz.
UygulamanızınPodfile
öğesini ARCore SDK'sını ve desteklenen iOS'u içerecek şekilde güncelleyin
sürüm oluşturma. Bunun için:
Aşağıdaki
platform
vepod
öğelerini ekleyin projeninPodfile
:platform :ios, '11.0' pod 'ARCore/Geospatial', '~> 1.45.0'
iOS 10'u desteklemek istiyorsanız
platform :ios, '10.0'
öğesini de belirtebilirsiniz. ancak Geospatial API'nin yalnızca iOS >= 11'deki çalışma zamanında çalışacağını unutmayın.Bir Terminal penceresi açın ve şu klasörden
pod install
komutunu çalıştırın: Xcode projeniz mevcut.Bu komut dosyası oluşturmak için kullandığınız bir
.xcworkspace
ve uygulamayı çalıştırın.
Aşağıdaki gibi, geliştirme ortamınızın ARCore SDK'sı gereksinimlerini karşıladığından emin olun: Hızlı Başlangıç'da anlatılmıştır.
Oturum yapılandırmasında coğrafi özellikleri etkinleştir
Cihaz uyumluluğunu kontrol etme
ARCore'u destekleyen tüm cihazlar Geospatial API'yi de desteklemez; hızlı başlangıç kılavuzunda bulabilirsiniz.
Tekliflerinizi otomatikleştirmek ve optimize etmek için
GARSession.isGeospatialModeSupported:
aşağıdaki işlemleri yaparak cihazı kontrol edin:
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ın çalışma zamanında şu konum izinlerini istemesi gerekir: oturumu yapılandırın:
kCLAuthorizationStatusAuthorizedWhenInUse
CLAccuracyAuthorizationFullAccuracy
(iOS >= 14 olduğunda geçerlidir)
Cihazın mevcut konumunda jeo-uzamsal kullanılabilirliği kontrol etme
Geospatial API, jeo-uzamsal dönüşüm belirlemek için VPS ve GPS'i birlikte kullandığından, cihaz konumunu belirleyebildiği sürece API kullanılabilir. İç mekanlar ve yoğun kentsel ortamlar gibi GPS doğruluğu düşük olan alanlarda API, yüksek doğruluklu dönüşümler oluşturmak için VPS kapsama alanını kullanır. Tipik koşullarda VPS'nin yaklaşık 5 metre konum doğruluğu ve 5 derece dönüş doğruluğu sağlaması beklenebilir. Belirli bir konumun VPS kapsamında olup olmadığını belirlemek için GARSession.checkVPSAvailabilityAtCoordinate:completionHandler:
aracını kullanın.
Geospatial API, VPS kapsama alanı olmayan bölgelerde de kullanılabilir. Yukarıdan engellerin az olduğu veya hiç olmadığı açık hava ortamlarında GPS, yüksek doğrulukta bir dönüşüm oluşturmak için yeterli olabilir.
Sırada ne var?
- Kullanıcının cihazının gerçek dünyadaki kesin konumunu belirlemek için cihaz kamerasının coğrafi dönüşümünü alın.
- Bir cihazın belirtilen konumundaki VPS'nin kullanılabilirliğini kontrol edin.