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

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

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

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

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

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

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

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

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

  • 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

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

Самокат стоїть в 50 метрах, додаток показує «заряд 87%», QR-код сканується — і нічого. Блок управління самоката завис, команда розблокування пішла, але підтвердження немає. Користувач сканує повторно, нарешті їде. Гроші списалися двічі. Це не гіпотетичний кейс — це типова ситуація перших версій IoT-команд без ідемпотентності та стану транзакції.

Специфіка кикшерингу порівняно з каршерингом

Самокати — масовий мікромобільний транспорт з дешевими IoT-блоками (Omni, Ninebot, Segway OEM lock). Протокол управління у кожного виробника свій: Segway Lock Protocol, MQTT-based Omni API або власний TCP. На відміну від автомобіля, самокат може опинитися без мережі в момент розблокування — і тут важлива Bluetooth-розблокування як fallback.

BLE-розблокування. Більшість сучасних IoT-замків підтримують BLE поблизу: користувач підходить близько, додаток виявляє пристрій через CBCentralManager (iOS) або BluetoothLeScanner (Android), відправляє зашифрований unlock-пакет прямо на замок без інтернету. Ключ шифрування генерується сервером при початку оренди та передається в додаток заранее — класична схема offline token.

QR та NFC

Сканування QR — найпоширеніший спосіб ідентифікації самоката. AVCaptureSession з AVMetadataObjectTypeQRCode на iOS, CameraX + BarcodeScanner з ML Kit на Android. Важливий момент: не робити scanning overlay через SwiftUI ZStack поверх AVCapturePreviewLayer без явної CALayer z-order — SwiftUI-view створює додатковий CALayer і може перекривати превью камери на деяких моделях iPhone.

NFC як альтернатива QR працює через Core NFC NFCNDEFReaderSession (iOS) або NfcAdapter.enableForegroundDispatch (Android). На iOS читаємо лише в foreground, що обмежує сценарії, але для «прикладу телефон до самоката» достатньо.

Геозони та правила паркування

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

Перевірка нахождення точки в полігоні: GMSGeometryContainsLocation (Google Maps) або MKPolygon.contains на iOS. Для Flutter — poly_gon пакет або власна реалізація алгоритму ray casting. При спробі завершити оренду в забороненій зоні — блокуємо дію з указанням найближчого дозволеного паркування.

Важливо: перевірку зон дублюємо на сервері. Клієнт може бути старої версії або взлом.

Карта флоту та кластеризація

При 1000+ самокатах у місті кластеризація обов'язкова. Використовуємо Supercluster (портований для iOS/Android/Flutter) — алгоритм працює на клієнті, швидко перебудовує кластери при зміні zoom. При zoom > 15 переключаємось на окремі іконки з індикатором заряду батареї: зелені (>50%), жовті (20–50%), червоні (<20%).

Оновлення позицій самокатів — WebSocket з серверними подіями або periodic refresh кожні 30 секунд при активному екрані карти. Не оновлюємо координати всього флоту в background — це пустий розхід батареї.

Механіка тарифів

Кикшеринг часто використовує складні тарифи: старт + поминутна оплата + підвищуючий коефіцієнт в години пік. Логіку тарифікації зберігаємо на сервері, в додатку лише відображаємо поточну вартість через WebSocket з оновленням раз в 10 секунд під час поїздки. Не считаємо вартість на клієнті — розходження між тим, що показав клієнт, і тим, що списав сервер, веде до спорів і чарджбеків.

З практики

Кикшеринг-стартап, 400 самокатів в одному місті. Проблема: після оновлення iOS 17 у частини користувачів перестало працювати BLE-сканування — вони отримували помилку «Bluetooth не доступен», хоча BT був включен. Причина: зміна в CBCentralManager state restoration в iOS 17 — якщо додаток не реалізував CBCentralManagerDelegate.centralManager(_:willRestoreState:), при восстановленні state CBManager бросав .unknown замість .poweredOn. Фікс зайняв 2 години після діагностики.

Етапи та строки

  1. Аудит IoT-блоків самокатів — протокол, BLE-підтримка, API виробника
  2. Архітектура команд з idempotency та offline BLE fallback
  3. Розробка карти, QR/NFC, тарифікації, оплати
  4. Інтеграція з міськими геозонами (GeoJSON від оператора або міського API)
  5. Публікація

MVP (карта → QR → оренда → оплата → завершення): 10–14 тижнів. Повна платформа з геозонами, BLE, аналітикою операцій: 4–6 місяців. Вартість розраховується індивідуально.