我今天遇到了一个问题。 2 或 3 天前,我将 FCM 集成到我的 Flutter 应用程序中。有一些缺乏实现,但我不在乎,因为我的编码阶段的 FCM 部分还没有到来。但是今天,在开始编码之前,我通常会运行 flutter run
,这些是日志。
W/ConnectionTracker(17017): java.lang.IllegalArgumentException: Service not registered: com.google.android.gms.measurement.internal.zzja@e8966f2
W/ConnectionTracker(17017): at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:1832)
W/ConnectionTracker(17017): at android.app.ContextImpl.unbindService(ContextImpl.java:1880)
W/ConnectionTracker(17017): at android.content.ContextWrapper.unbindService(ContextWrapper.java:741)
W/ConnectionTracker(17017): at com.google.android.gms.common.stats.ConnectionTracker.zza(com.google.android.gms:play-services-basement@@17.3.0:55)
W/ConnectionTracker(17017): at com.google.android.gms.common.stats.ConnectionTracker.unbindService(com.google.android.gms:play-services-basement@@17.3.0:50)
W/ConnectionTracker(17017): at com.google.android.gms.measurement.internal.zzjb.zzF(com.google.android.gms:play-services-measurement-impl@@18.0.2:6)
W/ConnectionTracker(17017): at com.google.android.gms.measurement.internal.zzil.zza(com.google.android.gms:play-services-measurement-impl@@18.0.2:5)
W/ConnectionTracker(17017): at com.google.android.gms.measurement.internal.zzak.run(com.google.android.gms:play-services-measurement-impl@@18.0.2:5)
W/ConnectionTracker(17017): at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:462)
W/ConnectionTracker(17017): at java.util.concurrent.FutureTask.run(FutureTask.java:266)
W/ConnectionTracker(17017): at com.google.android.gms.measurement.internal.zzfh.run(com.google.android.gms:play-services-measurement-impl@@18.0.2:6)
E/FirebaseInstanceId(17017): Failed to get FIS auth token
E/FirebaseInstanceId(17017): java.util.concurrent.ExecutionException: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.Tasks.zza(com.google.android.gms:play-services-tasks@@17.1.0:69)
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.Tasks.await(com.google.android.gms:play-services-tasks@@17.1.0:23)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.setDefaultAttributesToBundle(com.google.firebase:firebase-iid@@21.0.1:11)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.startRpc(com.google.firebase:firebase-iid@@21.0.1:1)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.getToken(com.google.firebase:firebase-iid@@21.0.1:1)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId.lambda$getInstanceId$1$FirebaseInstanceId(Unknown Source:2)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId$$Lambda$3.start(Unknown Source:8)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.RequestDeduplicator.getOrStartGetTokenRequest(com.google.firebase:firebase-iid@@21.0.1:7)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId.lambda$getInstanceId$2$FirebaseInstanceId(Unknown Source:33)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId$$Lambda$0.then(Unknown Source:6)
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.zzf.run(com.google.android.gms:play-services-tasks@@17.1.0:2)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.processTask(ThreadPoolExecutor.java:1187)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/FirebaseInstanceId(17017): at com.google.android.gms.common.util.concurrent.zza.run(com.google.android.gms:play-services-basement@@17.3.0:6)
E/FirebaseInstanceId(17017): at java.lang.Thread.run(Thread.java:929)
E/FirebaseInstanceId(17017): Caused by: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
E/FirebaseInstanceId(17017): at com.google.firebase.installations.remote.FirebaseInstallationServiceClient.createFirebaseInstallation(FirebaseInstallationServiceClient.java:200)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.registerFidWithServer(FirebaseInstallations.java:533)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.doNetworkCallIfNecessary(FirebaseInstallations.java:388)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.lambda$doRegistrationOrRefresh$2(FirebaseInstallations.java:377)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations$$Lambda$4.run(Unknown Source:4)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.processTask(ThreadPoolExecutor.java:1187)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/FirebaseInstanceId(17017): ... 1 more
W/FirebaseInstanceId(17017): Token retrieval failed: SERVICE_NOT_AVAILABLE. Will retry token retrieval
E/FirebaseInstanceId(17017): Failed to get FIS auth token
E/FirebaseInstanceId(17017): java.util.concurrent.ExecutionException: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.Tasks.zza(com.google.android.gms:play-services-tasks@@17.1.0:69)
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.Tasks.await(com.google.android.gms:play-services-tasks@@17.1.0:23)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.setDefaultAttributesToBundle(com.google.firebase:firebase-iid@@21.0.1:11)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.startRpc(com.google.firebase:firebase-iid@@21.0.1:1)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.getToken(com.google.firebase:firebase-iid@@21.0.1:1)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId.lambda$getInstanceId$1$FirebaseInstanceId(Unknown Source:2)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId$$Lambda$3.start(Unknown Source:8)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.RequestDeduplicator.getOrStartGetTokenRequest(com.google.firebase:firebase-iid@@21.0.1:7)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId.lambda$getInstanceId$2$FirebaseInstanceId(Unknown Source:33)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId$$Lambda$0.then(Unknown Source:6)
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.zzf.run(com.google.android.gms:play-services-tasks@@17.1.0:2)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.processTask(ThreadPoolExecutor.java:1187)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/FirebaseInstanceId(17017): at com.google.android.gms.common.util.concurrent.zza.run(com.google.android.gms:play-services-basement@@17.3.0:6)
E/FirebaseInstanceId(17017): at java.lang.Thread.run(Thread.java:929)
E/FirebaseInstanceId(17017): Caused by: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
E/FirebaseInstanceId(17017): at com.google.firebase.installations.remote.FirebaseInstallationServiceClient.createFirebaseInstallation(FirebaseInstallationServiceClient.java:200)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.registerFidWithServer(FirebaseInstallations.java:533)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.doNetworkCallIfNecessary(FirebaseInstallations.java:388)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.lambda$doRegistrationOrRefresh$2(FirebaseInstallations.java:377)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations$$Lambda$4.run(Unknown Source:4)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.processTask(ThreadPoolExecutor.java:1187)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/FirebaseInstanceId(17017): ... 1 more
W/FirebaseInstanceId(17017): Token retrieval failed: SERVICE_NOT_AVAILABLE. Will retry token retrieval
E/FirebaseInstanceId(17017): Failed to get FIS auth token
E/FirebaseInstanceId(17017): java.util.concurrent.ExecutionException: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.Tasks.zza(com.google.android.gms:play-services-tasks@@17.1.0:69)
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.Tasks.await(com.google.android.gms:play-services-tasks@@17.1.0:23)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.setDefaultAttributesToBundle(com.google.firebase:firebase-iid@@21.0.1:11)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.startRpc(com.google.firebase:firebase-iid@@21.0.1:1)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.getToken(com.google.firebase:firebase-iid@@21.0.1:1)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId.lambda$getInstanceId$1$FirebaseInstanceId(Unknown Source:2)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId$$Lambda$3.start(Unknown Source:8)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.RequestDeduplicator.getOrStartGetTokenRequest(com.google.firebase:firebase-iid@@21.0.1:7)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId.lambda$getInstanceId$2$FirebaseInstanceId(Unknown Source:33)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId$$Lambda$0.then(Unknown Source:6)
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.zzf.run(com.google.android.gms:play-services-tasks@@17.1.0:2)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.processTask(ThreadPoolExecutor.java:1187)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/FirebaseInstanceId(17017): at com.google.android.gms.common.util.concurrent.zza.run(com.google.android.gms:play-services-basement@@17.3.0:6)
E/FirebaseInstanceId(17017): at java.lang.Thread.run(Thread.java:929)
E/FirebaseInstanceId(17017): Caused by: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
E/FirebaseInstanceId(17017): at com.google.firebase.installations.remote.FirebaseInstallationServiceClient.createFirebaseInstallation(FirebaseInstallationServiceClient.java:200)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.registerFidWithServer(FirebaseInstallations.java:533)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.doNetworkCallIfNecessary(FirebaseInstallations.java:388)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.lambda$doRegistrationOrRefresh$2(FirebaseInstallations.java:377)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations$$Lambda$4.run(Unknown Source:4)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.processTask(ThreadPoolExecutor.java:1187)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/FirebaseInstanceId(17017): ... 1 more
W/FirebaseInstanceId(17017): Token retrieval failed: SERVICE_NOT_AVAILABLE. Will retry token retrieval
W/Settings(17017): Setting device_provisioned has moved from android.provider.Settings.Secure to android.provider.Settings.Global.
V/HiTouch_HiTouchSensor(17017): User setup is finished.
W/HiTouch_PressGestureDetector(17017): Touch pointer move a lot. The moving distance of X is:5.0, limit is:60The moving distance of Y is:64.0, limit is:60
E/FirebaseInstanceId(17017): Failed to get FIS auth token
E/FirebaseInstanceId(17017): java.util.concurrent.ExecutionException: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.Tasks.zza(com.google.android.gms:play-services-tasks@@17.1.0:69)
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.Tasks.await(com.google.android.gms:play-services-tasks@@17.1.0:23)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.setDefaultAttributesToBundle(com.google.firebase:firebase-iid@@21.0.1:11)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.startRpc(com.google.firebase:firebase-iid@@21.0.1:1)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.getToken(com.google.firebase:firebase-iid@@21.0.1:1)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId.lambda$getInstanceId$1$FirebaseInstanceId(Unknown Source:2)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId$$Lambda$3.start(Unknown Source:8)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.RequestDeduplicator.getOrStartGetTokenRequest(com.google.firebase:firebase-iid@@21.0.1:7)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId.lambda$getInstanceId$2$FirebaseInstanceId(Unknown Source:33)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId$$Lambda$0.then(Unknown Source:6)
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.zzf.run(com.google.android.gms:play-services-tasks@@17.1.0:2)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.processTask(ThreadPoolExecutor.java:1187)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/FirebaseInstanceId(17017): at com.google.android.gms.common.util.concurrent.zza.run(com.google.android.gms:play-services-basement@@17.3.0:6)
E/FirebaseInstanceId(17017): at java.lang.Thread.run(Thread.java:929)
E/FirebaseInstanceId(17017): Caused by: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
E/FirebaseInstanceId(17017): at com.google.firebase.installations.remote.FirebaseInstallationServiceClient.createFirebaseInstallation(FirebaseInstallationServiceClient.java:200)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.registerFidWithServer(FirebaseInstallations.java:533)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.doNetworkCallIfNecessary(FirebaseInstallations.java:388)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.lambda$doRegistrationOrRefresh$2(FirebaseInstallations.java:377)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations$$Lambda$4.run(Unknown Source:4)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.processTask(ThreadPoolExecutor.java:1187)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/FirebaseInstanceId(17017): ... 1 more
W/FirebaseInstanceId(17017): Token retrieval failed: SERVICE_NOT_AVAILABLE. Will retry token retrieval
E/FirebaseInstanceId(17017): Failed to get FIS auth token
E/FirebaseInstanceId(17017): java.util.concurrent.ExecutionException: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.Tasks.zza(com.google.android.gms:play-services-tasks@@17.1.0:69)
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.Tasks.await(com.google.android.gms:play-services-tasks@@17.1.0:23)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.setDefaultAttributesToBundle(com.google.firebase:firebase-iid@@21.0.1:11)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.startRpc(com.google.firebase:firebase-iid@@21.0.1:1)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.GmsRpc.getToken(com.google.firebase:firebase-iid@@21.0.1:1)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId.lambda$getInstanceId$1$FirebaseInstanceId(Unknown Source:2)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId$$Lambda$3.start(Unknown Source:8)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.RequestDeduplicator.getOrStartGetTokenRequest(com.google.firebase:firebase-iid@@21.0.1:7)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId.lambda$getInstanceId$2$FirebaseInstanceId(Unknown Source:33)
E/FirebaseInstanceId(17017): at com.google.firebase.iid.FirebaseInstanceId$$Lambda$0.then(Unknown Source:6)
E/FirebaseInstanceId(17017): at com.google.android.gms.tasks.zzf.run(com.google.android.gms:play-services-tasks@@17.1.0:2)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.processTask(ThreadPoolExecutor.java:1187)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/FirebaseInstanceId(17017): at com.google.android.gms.common.util.concurrent.zza.run(com.google.android.gms:play-services-basement@@17.3.0:6)
E/FirebaseInstanceId(17017): at java.lang.Thread.run(Thread.java:929)
E/FirebaseInstanceId(17017): Caused by: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
E/FirebaseInstanceId(17017): at com.google.firebase.installations.remote.FirebaseInstallationServiceClient.createFirebaseInstallation(FirebaseInstallationServiceClient.java:200)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.registerFidWithServer(FirebaseInstallations.java:533)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.doNetworkCallIfNecessary(FirebaseInstallations.java:388)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations.lambda$doRegistrationOrRefresh$2(FirebaseInstallations.java:377)
E/FirebaseInstanceId(17017): at com.google.firebase.installations.FirebaseInstallations$$Lambda$4.run(Unknown Source:4)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.processTask(ThreadPoolExecutor.java:1187)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
E/FirebaseInstanceId(17017): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/FirebaseInstanceId(17017): ... 1 more
W/FirebaseInstanceId(17017): Token retrieval failed: SERVICE_NOT_AVAILABLE. Will retry token retrieval
这是我的应用级 gradle 依赖项:
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'com.google.gms.google-services'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'com.android.support:multidex:1.0.3'
implementation platform('com.google.firebase:firebase-bom:26.5.0')
implementation 'com.google.firebase:firebase-analytics:18.0.2'
implementation 'com.google.firebase:firebase-messaging:21.0.1'
implementation 'com.google.firebase:firebase-firestore:22.1.0'
implementation 'com.google.firebase:firebase-auth:20.0.2'
implementation 'com.google.android.gms:play-services-basement:17.5.0'
}
这是放在android/app/src/main/java/io/flutter/plugins/下的Application.java文件
package com.xyz.yzx;
import io.flutter.app.FlutterApplication;
import io.flutter.plugin.common.PluginRegistry;
import io.flutter.plugin.common.PluginRegistry.PluginRegistrantCallback;
import io.flutter.plugins.GeneratedPluginRegistrant;
import io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService;
import io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin;
public class Application extends FlutterApplication implements PluginRegistrantCallback {
@Override
public void onCreate() {
super.onCreate();
FlutterFirebaseMessagingService.setPluginRegistrant(this);
}
@Override
public void registerWith(PluginRegistry registry) {
FirebaseMessagingPlugin.registerWith(registry.registrarFor("io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin"));
}
}
这是放在android/app/src/main/kotlin/com/xyz/zxy中的MainActivity.kt
package com.xyz.zxy
import io.flutter.embedding.android.FlutterActivity
class MainActivity: FlutterActivity() {
}
我也将 android:name 转换为 .Application 因为我想实现 FCM 对吗?
<application
android:name=".Application"
我做到了:
flutter clean
。flutter pub get
。flutter run
。在失败之后,我选择了一条不同的道路。
我将 android/app/src 中的 google-services.json 文件与我刚刚从 Firebase 下载的最新 google-services.json 文件进行了交叉检查。一切都一样。我仍然用新文件替换了旧文件。
未找到解决方案。
我检查了 build/app/generated/res/google-services 文件夹并用 Firebase 信息交叉检查 values.xml。仍然相同的文件和 API 数据。如google_api_key、google_app_id、google_storage_bucket、gcm_defaultSenderId等完全匹配。
Future<void> main() async {
Paint.enableDithering = true;
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
await setupHive();
runApp(MyApp());
}
这是我项目的主要部分。我没有在那里调用 FCM,也没有从我的应用程序的任何地方调用它,除了 android 文件中的 Application.java 文件。
pubspec.yaml 中的 firebase 依赖项以指示它们的版本:
firebase_admob: ^0.11.0+1
firebase_messaging:
firebase_core: ^0.7.0
firebase_auth: ^0.20.0+1
cloud_firestore: ^0.16.0
该应用处于生产模式,这消除了 Firebase 和 Google Cloud Platform 中的所有限制。我检查了 Google Cloud Platform 并确保没有限制。还启用了 Firebase 安装。
由于 Failed to get FIS auth token on Flutter Android
和 W/FirebaseInstanceId(17017): Token retrieval failed: SERVICE_NOT_AVAILABLE. Will retry token retrieval
我不能使用身份验证服务,我不能使用 Firestore 服务等。所以即使在生产阶段应用程序也不知何故死了。
我不知道如何解决这个问题。有人可以帮我吗?
编辑:
当我尝试使用电子邮件和密码方法注册时,这是日志中的输出:
I/FirebaseAuth(17017): [FirebaseAuth:] Preparing to create service connection to fallback implementation
W/System (17017): Ignoring header X-Firebase-Locale because its value was null.
答案 0 :(得分:1)
我找到了解决方案,但我对这个解决方案感到很尴尬。这只是一个糟糕的连接问题。我认为拥有互联网就足以与 Firebase 建立连接,但事实并非如此。
我连接到我自己的个人热点,一切正常。我将与我所在地区的其他联系人核实。