Мы ускорили синхронизацию в приложении для Flipper Zero на порядок
Синхронизация - это важнейший процесс в приложении для Flipper Zero на ряду с обновлением. Без неё взаимодействовать с ключами флиппера в приложении нельзя - эмулировать, делиться ими, редактировать или просматривать.
Раньше пользователи ждали десятки секунд или даже минуты на каждом запуске приложения. Пользователи в шутку называли нас "приложение-спиннер". Это происходило из-за физических ограничений BLE.
Теперь мы с командой прошивки ускорили скорость синхронизации на второй и последующий запуск приложения до почти мгновенной. На прикреплённом видео в одних и тех же условиях синхронизация проходит 01:14 cекунд вместо 11:18 секунд. Т.е ускорение более чем в 10 раз. На большем количестве ключей результат будет лучше.
Мы это сделали благодаря двум оптимизациям:
- Теперь можно получить время обновления хранилища на флиппере. Таким образом мы не проводим синхронизацию если файлы не изменились
- Раньше мы делали один гигантский запрос на флиппер для того чтобы получить базовую информацию о нем - теперь лишняя информация не запрашивается и запрос происходит быстро. Нам потребовался большой рефакторинг для этого
Версия 1.4.2 ещё не вышла, сейчас мы заканчиваем рефакторинг, потом отдадим версию QA и только после этого версия будет доступна всем пользователям
Post #204
20.1K
- 🔥 36
- ⚡ 4
- 👍 3
- 🤯 2
- 🤩 2
- 👎 1