Cara membuat dan menemukan jangkar menggunakan relokasi kasar di Objective-C
Azure Spatial Anchors dapat mengaitkan data sensor di perangkat, memosisikan data sensor dengan jangkar yang Anda buat. Data ini juga dapat digunakan untuk menentukan dengan cepat apakah ada jangkar di dekat perangkat Anda. Untuk informasi selengkapnya, lihat Relokasi kasar.
Prasyarat
Untuk menyelesaikan panduan ini, pastikan Anda telah:
- Pengetahuan dasar tentang Objective-C.
- Membaca Ringkasan Azure Spatial Anchors.
- Menyelesaikan salah satu Mulai Cepat 5 menit.
- Membaca Cara membuat dan menemukan jangkar.
Mengonfigurasi penyedia sidik jari sensor
Kita akan mulai dengan membuat dan mengonfigurasi penyedia sidik jari sensor. Penyedia sidik jari sensor akan mengurus membaca sensor khusus platform di perangkat Anda dan mengubah pembacaannya menjadi representasi umum yang digunakan oleh sesi jangkar spasial cloud.
Penting
Pastikan untuk memeriksa di sini jika sensor yang aktif tersedia di platform Anda.
// Create the sensor fingerprint provider
ASAPlatformLocationProvider *sensorProvider;
sensorProvider = [[ASAPlatformLocationProvider alloc] init];
// Allow GPS
ASASensorCapabilities *sensors = locationProvider.sensors;
sensors.geoLocationEnabled = true;
// Allow WiFi scanning
sensors.wifiEnabled = true;
// Populate the set of known BLE beacons' UUIDs
NSArray *uuids = @[@"22e38f1a-c1b3-452b-b5ce-fdb0f39535c1", @"a63819b9-8b7b-436d-88ec-ea5d8db2acb0"];
// Allow a set of known BLE beacons
sensors.bluetoothEnabled = true;
sensors.knownBeaconProximityUuids = uuids;
Mengonfigurasi sesi jangkar spasial cloud
Kami akan mengurus konfigurasi sesi jangkar spasial cloud berikutnya. Pada baris pertama, kami mengatur penyedia sensor pada sesi. Mulai sekarang, segala jangkar yang kami buat selama sesi akan dikaitkan dengan serangkaian pembacaan sensor. Selanjutnya, kami membuat instans kriteria lokasi perangkat dekat dan menginisialisasinya agar sesuai dengan persyaratan aplikasi. Akhirnya, kami mengarahkan sesi untuk menggunakan data sensor saat menemukan jangkar dengan membuat pengawas dari kriteria perangkat dekat kami.
// Set the session's sensor fingerprint provider
cloudSpatialAnchorSession.locationProvider = sensorProvider;
// Configure the near-device criteria
ASANearDeviceCriteria *nearDeviceCriteria = [[ASANearDeviceCriteria alloc] init];
nearDeviceCriteria.distanceInMeters = 5.0f;
nearDeviceCriteria.maxResultCount = 25;
// Set the session's locate criteria
ASAAnchorLocateCriteria *anchorLocateCriteria = [[ASAAnchorLocateCriteria alloc] init];
anchorLocateCriteria.nearDevice = nearDeviceCriteria;
[cloudSpatialAnchorSession createWatcher:anchorLocateCriteria];
Setelah watcher Anda dibuat, acara akan AnchorLocated
menembak untuk setiap jangkar yang diminta. Peristiwa ini terjadi ketika jangkar berada, atau jika jangkar tidak dapat ditemukan. Jika situasi ini terjadi, alasannya akan dinyatakan dalam status tersebut. Setelah semua jangkar untuk pengamat diproses, ditemukan atau tidak ditemukan, maka peristiwa LocateAnchorsCompleted
itu akan menembak. Ada batas 35 pengidentifikasi per pengamat.
Langkah berikutnya
Dalam panduan ini, Anda belajar tentang cara membuat dan menemukan jangkar menggunakan sensor di perangkat. Untuk mempelajari lebih lanjut tentang relokasi kasar, lanjut ke panduan berikutnya.