我将fcm连接到我的Android应用程序,我完全按照文档进行操作,但我想我可能会遗漏一些内容。
我已尝试多次重新安装该应用以尝试点击onTokenRefresh()
但它无效。
我还尝试通过Firebase门户发送推送通知,但它从未到达。
所以也许它与我的设置有关,但我相信我已经正确设置了所有内容。
我将此添加到项目级别gradle:
classpath 'com.google.gms:google-services:4.0.0'
App level gradle:
compile 'com.google.firebase:firebase-core:16.0.0'
compile 'com.google.firebase:firebase-messaging:17.0.0'
在app level gradle依赖关系标记之外
apply plugin: 'com.google.gms.google-services'
我的Android Manifest还提供以下服务
<service android:name=".fcm.SEFirebaseInstanceIDService">
<intent-filter>
<action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
</intent-filter>
</service>
<service android:name=".fcm.SEMessagingService"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>
是的,我的Android清单条目位于</application>
我已经审核了有关此问题的每篇StackOverflow帖子,所有这些帖子都是通过我未实现的实施中的小错误来解决的。
请帮忙!
编辑:
我在这里抓住令牌变化的非常简单的类是
public class SEFirebaseInstanceIDService extends FirebaseInstanceIdService {
private static final String TAG = SEFirebaseInstanceIDService.class.getSimpleName();
@Override
public void onTokenRefresh() {
super.onTokenRefresh();
String refreshedToken = FirebaseInstanceId.getInstance().getToken();
Log.e("token",""+refreshedToken);
}
}
主要目标是能够正确发送通知,但我假设未达到onTokenRefresh
是无法发送通知的根源。