Риски OTA-обновлений
Вопрос
Какие риски несут OTA-обновления и как вы их снижаете?
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Несовместимость с нативной частью: `runtimeVersion`, fingerprint
Сломанное обновление у всех сразу: поэтапная раскатка, быстрый откат, встроенный откат при падении на старте
Подмена обновления: подпись обновлений (code signing)
Нарушение правил магазинов: только исправления и мелкие изменения
Нечитаемые ошибки: source maps для каждого обновления
Разные версии JS у пользователей: аналитика по id обновления
Что могут спросить следом
- Как проверить обновление перед раскаткой на всех?
- Что будет с пользователем, который долго не открывал приложение?
Разбор
Образцовый ответ: «Главный риск это несовместимость JS и нативной части. Его закрывает runtimeVersion, лучше с политикой fingerprint, которая сама меняет версию при изменении натива. Второй риск: сломанное обновление сразу у всех. Поэтому публикую сначала в канал для тестировщиков, потом на процент пользователей, и держу готовый откат; expo-updates ещё и сам откатывается, если бандл падает при запуске. Третий: подмена бандла, включаю подпись обновлений. Четвёртый: правила магазинов, через OTA только исправления и небольшие улучшения. Плюс source maps для каждого обновления и id обновления в аналитике и отчётах об ошибках, чтобы понимать, у кого какая версия»
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.