Реалізація пошуку припаркованого автомобіля через мобільний додаток

TRUETECH займається розробкою, підтримкою та обслуговуванням мобільних додатків iOS, Android, PWA. Маємо великий досвід та експертизу для публікації мобільних додатків до популярних маркетів Google Play, App Store, Amazon, AppGallery та інші.

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1735 послуг
Реалізація пошуку припаркованого автомобіля через мобільний додаток
Простий
від 4 годин до 2 днів
Часті запитання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    495

Реалізація поиску припаркованого автомобіля через мобільний додаток

Користувач припаркувався в торговому центрі, вийшов через годину — не пам'ятає, де машина. Це проста задача, яка вирішується збереженням GPS-координати в момент парковки. Але наївна реалізація дає погрішність 10–20 метрів усередину паркингу або в щільній міській забудові — користувач все одно бродить.

Як коректно визначити момент парковки

Найнадійніший тригер — відключення від Bluetooth автомобіля. Коли користувач глушить машину та уходить, телефон втрачає Bluetooth-з'єднання (CarPlay, Android Auto або просто аудіосистема). Це подія — чіткий сигнал «машина припаркована тут».

На iOS: CoreBluetooth + CBCentralManagerDelegate.centralManager(_:didDisconnectPeripheral:error:). При розриві — зберігаємо останню відому координату з CLLocationManager. Проблема: фіксується розрив по конкретному CBPeripheral.identifier, який потрібно заздалегідь прив'язати до автомобіля користувача.

На Android: BluetoothAdapter.ACTION_ACL_DISCONNECTED broadcast + фільтрація по імені/адресу пристрою. Працює в background через BroadcastReceiver.

Альтернатива — алгоритм на основі активності: Google Activity Recognition API (DetectedActivity) визначає, коли користувач переходить з IN_VEHICLE в ON_FOOT. У цей момент — зберігаємо координату. Не потребує Bluetooth, але спрацьовує з затримкою ~30–60 секунд.

На iOS аналог: CMMotionActivityManager — визначає смену режиму активності через акселерометр/барометр.

Збереження та відображення мітки

Координата зберігається локально — UserDefaults/SharedPreferences для простого випадку, або Core Data/Room якщо потрібна історія парковок. Мітка на карті — кастомний MKAnnotationView / Marker з іконкою автомобіля.

Точність GPS у місті погіршується від відображень (urban canyon effect). Усередняємо 3–5 останніх точок перед збереженням замість однієї — знижує випадкові викиди. CLLocation.horizontalAccuracy > 50 метрів — не зберігаємо, чекаємо кращої точності.

Усередину багатоповерхового паркингу GPS часто зовсім не працює. У цьому випадку фіксуємо останню точку перед в'їздом в підземний паркінг (GPS ще працював) + номер це тажу/рівня введений вручну.

Навігація до машини

Напрямок та відстань до збереженої точки — компас з CLHeading (iOS) або SensorManager.SENSOR_DELAY_UI + TYPE_ROTATION_VECTOR (Android). Стрілка повертається по мірі руху користувача.

Для навігації «відкрити в картах» — deep link у Google Maps / Apple Maps з координатами паркинку як destination. Пішохідний маршрут будується в нативному додатку карт, не у нашому.

AR-режим пошуку — накладення стрілки через камеру з відстанню. ARKit (iOS) або ARCore (Android). Виглядає ефектно, практично корисно в складних паркінгах. Додає 3–4 дні розробки поверх базової реалізації.

Історія парковок та заметки

Якщо потрібна історія («де я припарковувався у цього офісу звичайно») — Core Data / Room з таблицею parked_locations: координата, адреса (reverse geocoding через CLGeocoder / Geocoder), timestamp, опціональна заметка користувача («3й етаж, секція B»).

Список останніх міст — TableView / RecyclerView з ячейками: адреса, дата, мініатюра карти через MKMapSnapshotter (iOS) або статична карта Google Maps Static API (Android). Тап по записі — відкриває маршрут до цього місця. Корисно для повторюваних поїздок.

Ліміт зберігання — останні 20–50 міст, старі видаляються автоматично. Хмарна синхронізація (iCloud через NSUbiquitousKeyValueStore або Firebase Firestore) — якщо користувач змінює пристрої.

Графік

Базова реалізація (збереження по Bluetooth-событією + відображення на карті + компас): 4–8 годин. З AR-режимом, історією парковок та розумним визначенням через Activity Recognition: 1–2 робочих дні. Вартість розраховується індивідуально.