Используйте FCM и GCM для разных API - PullRequest
0 голосов
/ 31 августа 2018

Можно ли использовать FCM и GCM в одном приложении, но для разных номеров API?

Я имею в виду нечто подобное в манифесте:

// if api >= 21 
<service
android:name=".MyFirebaseMessagingService">
.
.
</service>

// if api < 21 
<service
android:name=".MyGcmListenerService"
.
.
</service>

1 Ответ

0 голосов
/ 31 августа 2018

Нет, согласно этот документ gcm и fcm не могут сосуществовать в одном приложении.

Кроме того, gcm устарела на долгое время и определенно будет закрыта в апреле 2019 года. Поэтому я настоятельно рекомендую перейти на fcm. Миграция с gcm на fcm довольно проста с помощью ссылки.

Кроме того, gcm не работает с приложениями, скомпилированными с целевой платформой oreo или выше. Это ограничение разрешений для фоновых сервисов. Но в соответствии с последней политикой Google PlayStore вы должны скомпилировать таргетинг (целевая версия, не изменяющая!) По крайней мере до последней версии API до текущей, если вы хотите загрузить свое приложение в PlayStore. Это также относится к обновлениям существующих приложений.

Для разрешения проблемы есть хакерский обходной путь, но с отключением gcm через несколько месяцев это не стоит усилий.

...