FirebaseInstanceIdService

FirebaseInstanceIdService

我在apk版本中遇到一些错误。这是我的代码。

package com.my.mybooks.services;

import android.util.Log;
import com.google.firebase.iid.FirebaseInstanceId;
import com.google.firebase.iid.FirebaseInstanceIdService;



/**
 * FirebaseInstanceIdService Gets FCM instance ID token from Firebase Cloud Messaging Server
 */

public class MyFirebaseInstanceIDService extends FirebaseInstanceIdService {

    //*********** Called whenever the Token is Generated or Refreshed ********//

    @Override
    public void onTokenRefresh() {
        super.onTokenRefresh();

        String refreshedToken = FirebaseInstanceId.getInstance().getToken();
        Log.i("My_Shop", "refreshedFCMToken= " + refreshedToken);
    }

}



  错误:找不到符号导入
  com.google.firebase.iid.FirebaseInstanceIdService;
                                ^符号:类FirebaseInstanceId服务位置:包com.google.firebase.iid


我的AndroidManifest.xml是

  <service android:name="com.atmajaa.atmajaabooks.services.MyFirebaseMessagingService">
        <intent-filter>
            <action android:name="com.google.firebase.MESSAGING_EVENT" />
        </intent-filter>
    </service>

    <service android:name="com.atmajaa.atmajaabooks.services.MyFirebaseInstanceIDService">
        <intent-filter>
            <action android:name="com.google.firebase.INSTANCE_ID_EVENT" />
        </intent-filter>
    </service>

最佳答案

FirebaseInstanceIdService已过时了。它被替换为FirebaseMessagingService。您正面临该错误,因为最新的Firebase库不再包含该类。

如FirebaseInstanceIdService here的文档所述,


  此类已弃用。赞成在中重写onNewToken
  FirebaseMessagingService。实施后,此服务
  可以安全移除。


您可以在下面找到如何迁移到FirebaseMessagingService

FirebaseInstanceIdService is Deprecated

08-07 22:00