ym88659208ym87991671
Инструкция по установке | Документация для разработчиков

Инструкция по установке

Обновлено 26 декабря 2022

Видеоинструкция по интеграции VPS SDK в проект для Android:

Запуск Example Project

Для запуска примера приложения необходим смартфон с поддержкой ARCore.

  1. Клонировать репозиторий по ссылке
https://github.com/naviar-io/naviar-sdk-android.git
  1. Открыть проект в Android Studio(также можно клонировать проект при помощи Android Studio: File → New → Project From Version Control и в поле URL указать ссылку из пункта 1)
  2. Дождаться окончания синхронизации проекта и запустить проект
    Start build

По умолчанию приложение запускается для работы с реальными данными и с использованием GPS. Чтобы проверить работу приложения на фото надо выполнить следующие шаги:

  1. После запуска приложения и предоставления всех разрешений, нужно сделать долгое нажатие по экрану, появится следующее меню
    Android vps menu
  2. Измените настройки на следующие:
    • Autofocus - выбран
    • GPS - не выбран
  3. Нажмите кнопку APPLY
  4. В модуле sample найдите папку img и откройте любое изображение с префиксом polytech.
  5. Наведите камеру телефона на изображение и дождитесь когда серый кружочек в правом верхнем углу станет зеленым.

Интеграция в собственный проект

  1. В build.gradle модуля добавить зависимость. Для этого в блок dependencies добавить следующую строчку
dependencies {
implementation("io.naviar:vps-sdk:0.7.0")
...
}
  1. Выполнить синхронизацию проекта с gradle.
Синхронизация Grande
  1. Добавить VpsArFragment на экран. Это можно сделать в xml или через код
<androidx.fragment.app.FragmentContainerView
android:id="@+id/vFragmentContainer"
android:name="io.naviar.vps_sdk.ui.VpsArFragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />
supportFragmentManager.beginTransaction()
.replace(R.id.vFragmentContainer, VpsArFragment())
.commit()
  1. Создать конфигурацию для VpsService. Для этого можно вызвать
// конфигурация для локализации внутри зданий
val vpsConfig = VpsConfig.getIndoorConfig(<locationIds>)
// или конфигурации для локализации вне зданий
val vpsConfig = VpsConfig.getOutdoorConfig(<locationIds>)
// или создать свою конфигурацию
val vpsConfig = VpsConfig(<locationIds>)
Название параметраОписаниеЗначение по умолчанию
locationIdsИдентификатор(ы) локации(й) для локализации.не задано
intervalLocalizationMSИнтервал между локализациями. Задается в миллисекундах.2500
useGpsИспользовать GPS при локализации или нет.false
localizationTypeСпособ локализации. Можно установить локализацию по фото(Photo) или при помощи нейронных сетей(MobileVps).MobileVps
failsCountToResetSessionКоличество неудачных попыток для сброса текущей сессии VPS (количество попыток исправить положение с учетом результата предыдущей локализации)5
updateWorldDurationMSПродолжительность обновления позиции модели между локализациями. Задается в миллисекундах.500
updateWorldDistanceLimitЕсли разница позиций моделей между двумя локализациями будет больше заданного значения, то позиция модели будет установлена немедленно, а иначе будет плавное перемещение модели до нужной позиции.2f
updateWorldAngleLimitЕсли разница поворота моделей между двумя локализациями будет больше заданного значения, то поворот модели будет установлен немедленно, а иначе будет плавный поворот модели до нужного значения.10f

После установить конфигурацию в VpsService

val vpsService = vpsArFragment.vpsService
vpsService.setVpsConfig(vpsConfig)

Запустить VpsService

vpsService.startVpsService()
ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.