В этом кратком руководстве по ARCore Geospatial API показано, как запустить в Xcode пример приложения, демонстрирующего Geospatial API.
Руководство по разработке собственного приложения с помощью Geospatial API см. в руководстве разработчика Geospatial для iOS .
Дополнительную информацию о Geospatial API см. в разделе «Введение в ARCore Geospatial API» .
Если вы новичок в разработке с помощью ARCore, см. раздел «Начало работы» .
Предварительные условия
- Xcode версии 13.0 или новее
- Cocoapods 1.4.0 или новее, если вы используете Cocoapods
- ARKit-совместимое устройство Apple под управлением iOS 12.0 или более поздней версии (требуется цель развертывания iOS 12.0 или более поздней версии)
Настройте образец приложения
Проект GeospatialExample , включенный в ARCore SDK для iOS, описывает код, вызывающий Geospatial API.
Клонируйте или загрузите ARCore SDK для iOS с GitHub, чтобы получить пример кода приложения.
Откройте окно Терминала или Finder и перейдите к папке, в которую вы клонировали или загрузили SDK.
Перейдите в папку arcore-ios-sdk-master/Examples .
Откройте папку «Примеры» , выберите папку GeospatialExample и нажмите «Открыть» .
Настройте проект Google Cloud
Прежде чем использовать систему визуального позиционирования (VPS) в своем приложении, вы должны сначала включить API ARCore в новом или существующем проекте Google Cloud. Хотя Geospatial API работает как с авторизацией без ключа, так и с авторизацией по ключу API, для этого краткого руководства используйте метод ключа API.
Настроить авторизацию
Чтобы выполнять вызовы геопространственного API к VPS, примерному приложению требуется авторизация, и оно может использовать неограниченный ключ API. Если вы используете ограниченный ключ API, вы также должны предоставить идентификатор пакета, который будет связан с ключом API.
В XCode в примере приложения GeospatialExample откройте файл ViewController.m и найдите your-api-key .
Добавьте свой ключ API в
GARSession
: вставьте ключ API, который вы скопировали на предыдущем шаге, поверх текста your-api-key (оставьте кавычки), как показано:self.garSession = [GARSession sessionWithAPIKey:@"your-api-key" bundleIdentifier:nil error:&error];
Настройте ARCore SDK
Приложение GeospatialExample поставляется с Podfile
, предварительно настроенным с использованием необходимых вам версий ARCore SDK и iOS. Чтобы установить эти зависимости, откройте окно терминала и запустите pod install
из папки, где существует проект Xcode.
При этом будет создан файл .xcworkspace
, который вы будете использовать позже для сборки и запуска приложения.
Создайте и запустите пример приложения.
В Xcode выберите файл рабочей области GeospatialExample и нажмите Signing & Capabilities .
Установите флажок Автоматически управлять подписанием .
В поле Команда введите название команды.
Вы можете использовать идентификатор пакета по умолчанию для запуска приложения из Xcode, но вы должны изменить его, если вы используете GeospatialExample в качестве заглушки для собственного приложения в рабочей среде.
Подключите свое устройство, чтобы запустить пример приложения.
Создайте и запустите приложение GeospatialExample из файла
.xcworkspace
, чтобы запустить его на своем устройстве.Чтобы избежать ошибок сборки, убедитесь, что вы выполняете сборку из файла
.xcworkspace
, а не из файла.xcodeproj
.
Вы должны увидеть вид с камеры, а также отладочную информацию, описывающую текущее геопространственное преобразование вашего устройства. Сканируя окружающую среду вокруг себя, обратите внимание, что значения достоверности точности позиционирования могут меняться по мере вашего перемещения, если вы находитесь в зоне, поддерживаемой локализацией VPS.
Когда ARCore уверен в местоположении и направлении вашего устройства, вы можете разместить якорь в своем текущем местоположении, используя геопространственное преобразование.
Точность позиционирования может быть слишком низкой, если информация VPS недоступна. Приложение должно быть подключено к Интернету, а местоположение должно быть известно VPS. Для достижения наилучших результатов запускайте образец приложения на улице (не в помещении) в светлое время суток.
Кроме того, если вы находитесь в районе, где не поддерживается VPS, или если сигналов GPS недостаточно, вам может потребоваться настроить пороговые значения достоверности в приложении, чтобы разместить якорь.
Чтобы настроить пороги:
В Xcode откройте файл ViewController.m и перейдите к следующему разделу:
// Thresholds for 'good enough' accuracy. These can be tuned for the // application. We use both 'low' // and 'high' values here to avoid flickering state changes. static const CLLocationAccuracy kHorizontalAccuracyLowThreshold = 10; static const CLLocationAccuracy kHorizontalAccuracyHighThreshold = 20; static const CLLocationDirectionAccuracy kHeadingAccuracyLowThreshold = 15; static const CLLocationDirectionAccuracy kHeadingAccuracyHighThreshold = 25;
При необходимости откорректируйте эти значения. Чем выше значение, тем ниже точность.
Снижение точности дает приложению больше возможностей при размещении привязки. Дополнительные сведения см. в разделе Настройка точности преобразования .
Следующие шаги
Ознакомьтесь с руководством разработчика Geospatial для iOS и начните создавать приложения с помощью Geospatial API.