我正在使用 Firebase 向安装我的应用的用户发送通知。一段时间后,他们中的一些人(不是很多(停止接收通知,尽管他们没有取消订阅。
我有一个假设刷新然后令牌的类,所以我不知道是什么原因造成的。
public class MyFirebaseInstanceIDService extends FirebaseInstanceIdService {
private static final String TAG = "MyFirebaseIIDService";
@Override
public void onTokenRefresh() {
String refreshedToken = FirebaseInstanceId.getInstance().getToken();
Log.d(TAG, "Refreshed token: " + refreshedToken);
}
}
知道吗?谢谢
尝试下面的代码片段:
@Override
public void onTokenRefresh() {
String refreshedToken = FirebaseInstanceId.getInstance().getToken();
Log.d(TAG, "Refreshed token: " + refreshedToken);
if(null != refreshedToken) {
FirebaseMessaging.getInstance().subscribeToTopic("news");
}
}
您是否像这样在清单中声明了服务?
<service android:name="MyFirebaseInstanceIDService" android:exported="false">
<intent-filter>
<action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
</intent-filter>
</service>