У меня есть API Laravel, который отправляет сообщения с данными через FCM в мобильное приложение Expo. Когда мобильное приложение получает сообщение с данными, оно принимает полезную нагрузку, создает конфигурацию уведомлений и использует Notifee для уведомления пользователя.
Однако на ум приходит следующий вопрос: что произойдет, если мне понадобится изменить полезную нагрузку сообщения данных в API? Как я могу обеспечить обратную совместимость, если я не могу быть уверен, что у всех пользователей установлена последняя версия приложения, а уведомления в старых версиях приложения больше не будут корректно строиться?На ум пришли два решения, но я не уверен, что есть лучшее:
- Мобильное приложение ожидает определенных свойств полезной нагрузки в сообщение с данными, и если они отсутствуют, возвращается конфигурация по умолчанию (например, резервный заголовок и тело).
- Сохраняйте как старые, так и новые свойства до тех пор, пока не будет установлена старая версия приложения. больше не используется. Я полагаю, что могу просмотреть некоторую статистику использования конкретных версий приложений в Apple App Store и Google Play Store.
Подробнее здесь: https://stackoverflow.com/questions/791 ... patibility