TGViewer
Мобильная разработка Мобильная разработка @mobi_dev · 13.2K subscribers
Post #3867 2.11K
Swift Concurrency и CoreBluetooth: как построить современный BLE-сервис

На случай проблем с сетью в Ситидрайве есть оффлайн-сценарий — управление дверьми машины через Bluetooth. Недавно мы с командой обновили этот механизм и значительно улучшили интеграцию различных модулей телеметрии.

Я взял на себя часть по iOS и попробовал применить новый Swift Concurrency поверх старого CoreBluetooth. В этой статье расскажу, какие подводные камни вылезли при совмещении structured concurrency и callback-ориентированного API, как их обойти и на что стоит обратить внимание, если вы тоже решите «прикрутить» современные async/await к старому API.
Читать далее

Читать: https://habr.com/ru/companies/citydrive/articles/946328/

@a_cup_of_java | Другие наши каналы
  • 👍 5
More from @mobi_dev
  1. Sep 29, 2026Как сделать прокрутку LazyVStack в SwiftUI предсказуемее LazyVStack не строит весь список…
  2. Sep 29, 2026Когда SubcomposeLayout в Jetpack Compose оправдывает свою цену Обычный Layout измеряет и р…
  3. Sep 29, 2026Как тестировать App Intents и Spotlight без автоматизации интерфейса На WWDC26 Apple показ…
  4. Sep 28, 2026Как связать список и экран деталей анимацией в Jetpack Compose Схема интеграции с Navigati…
  5. Sep 28, 2026Как ускорить первый кадр камеры в iOS 26 с AVFoundation Apple предлагает разделить запуск…
  6. Sep 28, 2026Как загружать локальный HTML в SwiftUI WebView через свою URL-схему В iOS 26 у SwiftUI поя…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →