Обновить
37
0.1
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.

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

Информация

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

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

Backend Developer, Mobile Application Developer
Senior
Android SDK
Kotlin
Java
Golang
PostgreSQL
SWIFT
iOS development
Android development