Картографическая платформа для создания приложения с функцией навигации внутри помещения

С чего начать?

  1. image
    1.

    Добавить локацию

    В качестве первого шага вам необходимо создать карту вашей целевой локации. Зарегистрируйте свою учетную запись на сайте Navigine и создайте новое местоположение. Добавьте план этажа, используя инструмент для создания карт внутри помещений.

  2. image
    2.

    Настройка инфраструктуры

    Для начала развертывания инфраструктуры, вам необходимо определить нужное количество биконов исходя из расчета установки: 10 BLE beacons на 1 000 кв.м площади локации. Эти биконы должны быть равномерно установлены и привязаны к местам на плане этажа с помощью редактора карты.

  3. image
    3.

    Интеграция SDK

    Когда оборудование будет установлено, карта загружена и на нее нанесена инфраструктура биконов, вы можете начать разработку своего приложения для indoor навигации. Вы можете использовать Navigine SDK на iOS / Android платформах для добавления навигации внутри помещения, реализации push-уведомлений, функций аналитики и трекинга.

Создайте приложение c indoor-навигацией, используя наши геолокационные инструменты

Наши простые в использовании SDK и API дают разработчикам возможность интегрировать функции indoor навигации, push-уведомлений и аналитики перемещений в свои приложения в течение нескольких дней. Воспользуйтесь преимуществами высокоточного позиционирования для приложений iOS и Android.

ЛЕГКАЯ ИНТЕГРАЦИЯ И ВНЕДРЕНИЕ, ОТКРЫТЫЙ API И ФУНКЦИОНАЛЬНЫЙ SDK

Читайте больше в Сообществе Разработчиков

Начать
GitHub Ссылка
// your personal security key in the profile
NSString *userHash = @"0000-0000-0000-0000";

// your API server
NSString *server = @"https://api.navigine.com";

NavigineCore *navigineCore = [[NavigineCore alloc] initWithUserHash:userHash server:server];

 // location id from web site
NSInteger locationId = 1;
BOOL forced = YES;

// If YES, the content data would be loaded even if the same version has been downloaded already earlier.
// If NO, the download process compares the current downloaded version with the last version on the server.
// If server version equals to the current downloaded version, the re-downloading is not done.

[navigineCore downloadLocationById:locationId forceReload:forced processBlock:^(NSInteger loadProcess) {
		NSLog(@"%zd",loadProcess);
} successBlock:^(NSDictionary *userInfo) {
		[navigineCore startNavigine];
} failBlock:^(NSError *error) {
		NSLog(@"%@",error);
}];
GitHub Ссылка
// Initializing Navigation library (USER_HASH is your personal security key)
if (!NavigineSDK.initialize(getApplicationContext(), USER_HASH, null)) Toast.makeText(this, "Unable to initialize Navigation library!", Toast.LENGTH_LONG).show();

// Download a location archive from the server
class LoadTask extends AsyncTask<Void, Void, Boolean>
{
  @Override protected Boolean doInBackground(Void... params)
  {
    return NavigineSDK.loadLocation(LOCATION_ID, 30) ?
           Boolean.TRUE : Boolean.FALSE;
  }

  @Override protected void onPostExecute(Boolean result)
  {
    if (result.booleanValue())
    {
      // Location is successully loaded
      // Do whatever you want here, e.g. you can start navigation
      NavigationThread navigation = NavigineSDK.getNavigation();
      if (navigation != null)
        navigation.setMode(NavigationThread.MODE_NORMAL);
    }
    else
    {
      // Error downloading location
      // Try again later or contact technical support
      Log.d(TAG, "Error downloading location!");
    }
  }
}
(new LoadTask()).execute();

Оставьте заявку

Задайте вопрос о наших продуктах и решениях или пришлите информацию о вашем проекте.

Нажимая на кнопку, вы даете согласие на обработку своих персональных данных