android无法检索设备令牌FirebaseInstanceId.getInstance()已弃用



Android Studio SDK 30Gradle 7

我可以收到通知。

但无法获得设备令牌:(


web上的所有答案都讨论FirebaseInstanceId。getInstance已弃用并使用FirebaseInstanceId进行应答。getInstance code:(

)Android不让我用

在androidManifest中我有

<service
android:name=".MyFirebaseMessagingService"
android:exported="false"
android:stopWithTask="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>

在构建。gradle我有

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

和模块级

dependencies {
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.3.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation 'com.google.firebase:firebase-messaging:21.0.1'
implementation 'com.google.firebase:firebase-core:18.0.2'
implementation 'com.google.firebase:firebase-analytics'
implementation platform('com.google.firebase:firebase-bom:26.5.0')
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
}
apply plugin: 'com.google.gms.google-services'

在已创建的类

public class MyFirebaseMessagingService extends FirebaseMessagingService {

@Override
public void onNewToken(@NonNull String token) {
super.onNewToken(token);
Log.e("newToken", token);
//Add your token in your sharepreferences.
getSharedPreferences("_", MODE_PRIVATE).edit().putString("fcm_token", token).apply();
}

但是这个onNewToken从来没有被触发,日志记录从来没有显示newToken"(

有人知道如何解决这个问题吗?

最后,

我找到了正确的文档

https://firebase.google.com/docs/cloud-messaging/android/client

最新更新