Firebase Cloud Messaging(FCM) не работает на Android версии ниже Kitkat (4.4)

Я реализовал FCM согласно документации, и он отлично работает на версиях Android 4.4(Kitkat) и выше и не работает на версиях 4.3(Jelly Bean) и ниже. Согласно документации FCM говорится, что минимальная требуемая версия 4.0 с сервисами воспроизведения, которые у меня есть. FCM генерирует токен обновления, и когда я использую его для отправки сообщения с моего сервера или консоли FCM, он не работает. Ниже мои Манифестные записи для FCM.

Firebase документация

     <service android:name=".service.RMFirebaseInstanceIDService">
        <intent-filter>
            <action android:name="com.google.firebase.INSTANCE_ID_EVENT" />
        </intent-filter>
    </service>
    <service android:name=".service.RMFirebaseMessagingService">
        <intent-filter>
            <action android:name="com.google.firebase.MESSAGING_EVENT" />
        </intent-filter>
    </service>

Любое предложение приветствуется. Благодарю.

1 ответ

У меня также была та же проблема, и я обновил сервисы воспроизведения и обновил нижеуказанные зависимости. И это сработало для меня.

app.gradle

    compile 'com.google.firebase:firebase-messaging:12.0.1'
    compile 'com.google.android.gms:play-services-maps:12.0.1'

project.gradle

    classpath 'com.google.gms:google-services:3.2.0'

Используйте последний плагин Google-сервисов.

В верхнем уровне build.gradle делаю изменения

buildscript {
// ...
dependencies {
  // ...
  // Add the following line:
  classpath 'com.google.gms:google-services:4.2.0'  // Google Services plugin
}

}

allprojects {
// ...
repositories {
  // Check that you have the following line (if not, add it):
  google()  // Google's Maven repository
  // ...
}

}

В модуле уровня build.gradle файл вносит изменения

 // Add the following line to the bottom of the file:
 apply plugin: 'com.google.gms:google-services'  // Google Play services Gradle plugin