Я использую FCM с Dexguard.FCM не может создать токен в сборке релиза.но, это хорошо работает в отладочной сборке.
мои настройки gradle
classpath 'com.google.gms:google-services:3.2.1'
compile 'com.google.android.gms:play-services-base:15.0.2'
compile 'com.google.android.gms:play-services-analytics:15.0.2'
compile 'com.google.firebase:firebase-core:15.0.2'
compile 'com.google.firebase:firebase-messaging:15.0.2'
И, ShrinkResources = false
И оптимизировать 5 раз Dexguard
gradle version : 4.1
android gradle plugin : 2.3.3
опции в dexguardFile, связанные с FCM
-keep public class com.google.firebase.** { *; }
-keep public class com.google.firebase.iid.FirebaseInstanceId { public *;}