Обновить
37
0
Maxim Firsov@FirsofMaxim

Mobile developer, Golang backend developer

Отправить сообщение

А кто-нибудь понимает как сделать аналог Observable.amb (запуск нескольких операций паралельно, возврат результата только, как только сработает первая операция, остальные отменяются)?

Ну вообще их 4 может быть, это терапевтические медицинские устройства. Добавлять по-одному довольно муторно выходит для пользователей.

Да локация нужна как системный сервис, CompanionApi вроде как доверенное и ему пермишен локации не нужен, но сервис таки требуется.

Ну вот я про этот системный диалог говорю, как в нем выбрать сразу 2 девайса? Там singleSelect и повлиять я не смог на это.

Да это шаг вперед, согласен, но я не нашел способа добавить больше чем 1 устройство за раз. Что интересно, я могу показать все нужные устройства, но вот добавлять системный UI дает только по одному.

Я настолько намучался с этим, что перевел и выложил на хабре цикл статей по BLE для андроид.

не устойчивое API (часто используется рефлексия), сырые драйвера/чипсеты даже у известных вендоров.

Как Android разработчик в области Bluetooth-Low-Energy переживаю аналогичные чувства, правда в меньшей степени, после 8ки стало получше, но все равно не фонтан (не iOS).

с джойстиками нормально, от PS4 да лучшие.

Спасибо за ностальгию, когда-то работал админом в челябинском клубе "Полигон" (в начале 2000х) , веселые времена конечно были.

Знаете, формат "Перевод" подразумевает такое (минимум переводческого вмешательства). Если вам есть что сказать - сообщество всегда радо этому, пишите статью! Если не нравится стиль перевода (cut&paste of translate google), тоже есть выход - переводите сами, лучше и качественнее, сообщество будет также радоваться новому интересному контенту.

В переводах всегда указывается ссылка на автора и его статью, мой перевод не исключение: https://bladecoder.medium.com/kotlins-flow-in-viewmodels-it-s-complicated-556b472e281a

Что-то история с TrustAllCerts вообще не нравится...

Провел ревью своего старого проекта и схватил facePalm (нашел ошибку в формировании dagger-компонента), ты прав концептуально одинаковый подход.

Так-то да, но дьявол в деталях.

Про кодовую базу: за 10+ лет коммерческой разработки повезло один раз, увидел эталонный проект, испытал кодерский кайф.

Ну я перехожу на другую реализацию: https://habr.com/ru/company/yandex/blog/419295/

Bluetooth сделан адско в Android, ситуация меняется от версии к версии (улучшается), но принципы остаются примерно постоянные:

  1. работаем последовательно (глобальная очередь задач)

  2. используем небольшие задержки между принципиальными фазами (connecting, bonding, read/write characteristics)

  3. для избежания блокировки main-thread, лучше все работу организовать на отдельном потоке (пуле потоков)

  4. закладывать в код, ситуации обрыва подключения и его восстановления

Разбейте задачу на подэтапы:

  1. определение высоты антенны (сопоставить рельеф вышек и места антенны)

  2. юстировка положения антенны (делается на месте) + CellInfo аппа для Android.

    Сам год назад решал аналогичную проблему.

Информация

В рейтинге
Не участвует
Откуда
Снежинск (Челябинская обл.), Челябинская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Бэкенд разработчик, Разработчик мобильных приложений
Старший
Android SDK
Kotlin
Java
Golang
PostgreSQL
Swift
Разработка под iOS
Разработка под Android