Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java E/FirebaseInstanceId:无法获取FIS身份验证令牌_Java_Android_Firebase_Firebase Authentication - Fatal编程技术网

Java E/FirebaseInstanceId:无法获取FIS身份验证令牌

Java E/FirebaseInstanceId:无法获取FIS身份验证令牌,java,android,firebase,firebase-authentication,Java,Android,Firebase,Firebase Authentication,我遵循了firebase创建项目的所有步骤。 当我运行应用程序时,出现以下错误: E/FirebaseInstanceId:无法获取FIS身份验证令牌 java.util.concurrent.ExecutionException:com.google.firebase.installations.FirebaseInstallationsException 我在build.gradle中添加了必要的库 但它还是给了我错误。有什么解决办法吗 完整堆叠距离如下所示: -11 17:31:28.46

我遵循了firebase创建项目的所有步骤。 当我运行应用程序时,出现以下错误: E/FirebaseInstanceId:无法获取FIS身份验证令牌 java.util.concurrent.ExecutionException:com.google.firebase.installations.FirebaseInstallationsException

我在build.gradle中添加了必要的库

但它还是给了我错误。有什么解决办法吗

完整堆叠距离如下所示:

-11 17:31:28.460 8093-8093/com.myapp V/FA: Registered activity lifecycle callback
03-11 17:31:28.510 8093-8153/com.myapp W/DynamiteModule: Local module descriptor class for com.google.firebase.auth not found.
03-11 17:31:28.550 8093-8156/com.myapp I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-11 17:31:28.550 8093-8093/com.myapp I/FirebaseInitProvider: FirebaseApp initialization successful
03-11 17:31:28.550 8093-8156/com.myapp I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-11 17:31:28.570 8093-8158/com.myapp W/DynamiteModule: Local module descriptor class for com.google.firebase.auth not found.
03-11 17:31:28.590 8093-8158/com.myapp I/FirebaseAuth: [FirebaseAuth:] Preparing to create service connection to gms implementation
03-11 17:31:28.690 8093-8093/com.myapp W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter androidx.vectordrawable.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
03-11 17:31:28.700 8093-8093/com.myapp V/FA: onActivityCreated
03-11 17:31:28.720 8093-8139/com.myapp V/FA: App measurement collection enabled
03-11 17:31:28.720 8093-8139/com.myapp V/FA: App measurement enabled for app package, google app id: com.myapp, 1:694013098939:android:9c791b689fec2f9f78629e
03-11 17:31:28.720 8093-8139/com.myapp I/FA: App measurement initialized, version: 22048
03-11 17:31:28.720 8093-8139/com.myapp I/FA: To enable debug logging run: adb shell setprop log.tag.FA VERBOSE
03-11 17:31:28.720 8093-8139/com.myapp I/FA: To enable faster debug mode event logging run:
      adb shell setprop debug.firebase.analytics.app com.myapp
03-11 17:31:28.720 8093-8139/com.myapp D/FA: Debug-level message logging enabled
03-11 17:31:28.750 8093-8093/com.myapp I/art: Rejecting re-init on previously-failed class java.lang.Class<androidx.core.view.ViewCompat$2>
03-11 17:31:28.750 8093-8093/com.myapp I/art: Rejecting re-init on previously-failed class java.lang.Class<androidx.core.view.ViewCompat$2>
03-11 17:31:28.850 8093-8093/com.myapp D/TextView: setTypeface with style : 0
03-11 17:31:28.980 8093-8093/com.myapp D/TextView: setTypeface with style : 0
03-11 17:31:28.990 8093-8093/com.myapp I/Timeline: Timeline: Activity_launch_request id:com.myapp time:8027824
03-11 17:31:29.150 8093-8157/com.myapp E/FirebaseInstanceId: Failed to get FIS auth token
    java.util.concurrent.ExecutionException: com.google.firebase.installations.FirebaseInstallationsException
        at com.google.android.gms.tasks.Tasks.zzb(Unknown Source)
        at com.google.android.gms.tasks.Tasks.await(Unknown Source)
        at com.google.firebase.iid.zzs.zzb(com.google.firebase:firebase-iid@@20.1.1:54)
        at com.google.firebase.iid.zzs.zza(com.google.firebase:firebase-iid@@20.1.1:89)
        at com.google.firebase.iid.zzv.run(com.google.firebase:firebase-iid@@20.1.1)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:818)
     Caused by: com.google.firebase.installations.FirebaseInstallationsException
        at com.google.firebase.installations.FirebaseInstallations.doRegistrationInternal(com.google.firebase:firebase-installations@@16.0.0:333)
        at com.google.firebase.installations.FirebaseInstallations.doGetId(com.google.firebase:firebase-installations@@16.0.0:280)
        at com.google.firebase.installations.FirebaseInstallations.access$lambda$0(com.google.firebase:firebase-installations@@16.0.0)
        at com.google.firebase.installations.FirebaseInstallations$$Lambda$1.run(com.google.firebase:firebase-installations@@16.0.0)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
        at java.lang.Thread.run(Thread.java:818) 
-11 17:31:28.460 8093-8093/com.myapp V/FA:注册的活动生命周期回调
03-11 17:31:28.510 8093-8153/com.myapp W/DynamiteModule:未找到com.google.firebase.auth的本地模块描述符类。
03-11 17:31:28.550 8093-8156/com.myapp I/System.out:(HTTPLog)-静态:isSBSettingEnabled false
03-11 17:31:28.550 8093-8093/com.myapp I/FirebaseInitProvider:FirebaseApp初始化成功
03-11 17:31:28.550 8093-8156/com.myapp I/System.out:(HTTPLog)-静态:isSBSettingEnabled false
03-11 17:31:28.570 8093-8158/com.myapp W/DynamiteModule:未找到com.google.firebase.auth的本地模块描述符类。
03-11 17:31:28.590 8093-8158/com.myapp I/FirebaseAuth:[FirebaseAuth:]准备创建与gms实施的服务连接
03-11 17:31:28.690 8093-8093/com.myapp W/art:Android 4.1之前的方法Android.graphics.PorterDuffColorFilter androidx.vectordrawable.graphics.drawable.VectorDrawableCompat.UpdatentFilter(Android.graphics.PorterDuffColorFilter,Android.content.res.ColorStateList,Android.graphics.PorterDuff$模式)将错误地重写android.graphics.drawable.drawable中的包私有方法
03-11 17:31:28.700 8093-8093/com.myapp V/FA:onActivityCreated
03-11 17:31:28.720 8093-8139/com.myapp V/FA:App测量采集已启用
03-11 17:31:28.720 8093-8139/com.myapp V/FA:为应用程序包启用应用程序测量,谷歌应用程序id:com.myapp,1:694013098939:android:9c791b689fec2f9f78629e
03-11 17:31:28.720 8093-8139/com.myapp I/FA:App测量已初始化,版本:22048
03-11 17:31:28.720 8093-8139/com.myapp I/FA:启用调试日志运行:adb shell setprop log.tag.FA VERBOSE
03-11 17:31:28.720 8093-8139/com.myapp I/FA:要启用更快的调试模式事件日志记录运行:
adb shell setprop debug.firebase.analytics.app com.myapp
03-11 17:31:28.720 8093-8139/com.myapp D/FA:调试级别消息日志记录已启用
03-11 17:31:28.750 8093-8093/com.myapp I/art:拒绝在以前失败的类java.lang.class上重新初始化
03-11 17:31:28.750 8093-8093/com.myapp I/art:拒绝在以前失败的类java.lang.class上重新初始化
03-11 17:31:28.850 8093-8093/com.myapp D/TextView:setTypeface with style:0
03-11 17:31:28.980 8093-8093/com.myapp D/TextView:setTypeface with style:0
03-11 17:31:28.990 8093-8093/com.myapp I/时间线:时间线:活动启动请求id:com.myapp时间:8027824
03-11 17:31:29.150 8093-8157/com.myapp E/FirebaseInstanceId:无法获取FIS身份验证令牌
java.util.concurrent.ExecutionException:com.google.firebase.installations.FirebaseInstallationsException
位于com.google.android.gms.tasks.tasks.zzb(未知来源)
位于com.google.android.gms.tasks.tasks.await(未知来源)
在com.google.firebase.iid.zzs.zzb上(com.google.firebase:firebase iid@@20.1.1:54)
在com.google.firebase.iid.zzs.zza上(com.google.firebase:firebase-iid@@20.1.1:89)
在com.google.firebase.iid.zzv.run上(com.google.firebase:firebase iid@@20.1.1)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
运行(Thread.java:818)
原因:com.google.firebase.installations.firebase安装异常
在com.google.firebase.installations.firebase installations.doRegistrationInternal(com.google.firebase:firebase installations@@16.0.0:333)
在com.google.firebase.installations.firebase installations.doGetId(com.google.firebase:firebase installations@@16.0.0:280)
在com.google.firebase.installations.FirebaseInstallations.access$lambda$0(com.google.firebase:firebase installations@@16.0.0)
在com.google.firebase.installations.firebase安装$$Lambda$1.run(com.google.firebase:firebase安装@@16.0.0)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
运行(Thread.java:818)

似乎是firebase SDK的问题(com.google.firebase:firebase analytics:17.2.3)。我仍然有同样的日志

Fatal Exception: java.lang.IllegalStateException
com.google.firebase.iid.FirebaseInstanceId.zzl (com.google.firebase:firebase-iid@@20.1.1:75)
com.google.firebase.iid.FirebaseInstanceId.getId (com.google.firebase:firebase-iid@@20.1.1:49)
com.google.firebase.perf.internal.zzf.zzbu (com.google.firebase:firebase-perf@@19.0.5:181)
com.google.firebase.perf.internal.zzf.zzbt (com.google.firebase:firebase-perf@@19.0.5:44)

云消息版本20.1.1更改日志:

使用Firebase自动初始化过程和Gradle插件将google-services.json转换为资源的应用程序不受影响。但是,创建自己的FirebaseOptions实例的应用程序必须提供有效的API密钥、Firebase项目ID和应用程序ID

打开Firebase控制台。
接受任何新的条款和条件。
签出包名未匹配。
如果一切正常,

再次为你的应用程序添加Firebase设置。

我的第一个工作应用程序使用com.google.Firebase:Firebase messaging:20.2.0。然后我复制这个项目来做我的第二个申请。我在firebase控制台中注册了新应用程序,并替换了google-services.json。我跑的时候也犯了同样的错误。我通过降级到版本20.1.5解决了这个问题。之后我升级到20.2.3版,通知仍然有效。

更新您的
google services.json
文件。删除旧版本并从
Firebase console>Project Settings
重新下载新的
google services.json
,如果json正常,请运行clean Project。

步骤1:-使用FirebaseOption更新代码

FirebaseOptions options = new FirebaseOptions.Builder()
                .setApplicationId(FIREBASE_APPLICATION_ID)
                .setProjectId(FIREBASE_PROJECT_ID)
                .setGcmSenderId(FIREBASE_GCM_SENDER_ID)
                .setApiKey(FIREBASE_APIKEY_ID)
                .build();

        FirebaseApp.initializeApp( getApplicationContext(), options);
步骤2:-

/谷歌游戏服务/

//声明Crashlytics和Analytics的依赖项
apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.crashlytics'

implementation 'com.google.android.gms:play-services-auth:19.0.0'
// Firebase and ML Kit dependencies
implementation 'com.google.firebase:firebase-core:18.0.3'
implementation 'com.google.android.gms:play-services-vision:20.1.3'
implementation 'com.google.firebase:firebase-ml-vision-barcode-model:16.1.2'

// Import the BoM for the Firebase platform
implementation platform('com.google.firebase:firebase-bom:27.1.0')
// When using the BoM, you don't specify versions in Firebase library dependencies
implementation 'com.google.firebase:firebase-crashlytics'
implementation 'com.google.firebase:firebase-analytics'
implementation 'com.google.firebase:firebase-messaging'
implementation 'com.google.firebase:firebase-ml-vision'
 <service
        android:name="com.google.firebase.components.ComponentDiscoveryService"
        android:directBootAware="true"

        android:exported="false">
        <meta-data
            android:name="com.google.firebase.components:com.google.firebase.messaging.FirebaseMessagingRegistrar"
            android:value="com.google.firebase.components.ComponentRegistrar" />
        <meta-data
            android:name="com.google.firebase.components:com.google.firebase.datatransport.TransportRegistrar"
            android:value="com.google.firebase.components.ComponentRegistrar" />
        <meta-data
            android:name="com.google.firebase.components:com.google.firebase.iid.Registrar"
            android:value="com.google.firebase.components.ComponentRegistrar" />
        <meta-data
            android:name="com.google.firebase.components:com.google.firebase.installations.FirebaseInstallationsRegistrar"
            android:value="com.google.firebase.components.ComponentRegistrar" />
        <!--
            This registrar is not defined in the dynamic-module-support sdk itself to allow non-firebase
            clients to use it as well, by defining this registrar in their own core/common library.
        -->
        <meta-data
            android:name="com.google.firebase.components:com.google.firebase.dynamicloading.DynamicLoadingRegistrar"
            android:value="com.google.firebase.components.ComponentRegistrar" />

    </service>

    <provider
        android:name="com.google.firebase.provider.FirebaseInitProvider"
        android:authorities="Your_package_name.firebaseinitprovider"
        android:directBootAware="true"
        android:exported="false"
        android:initOrder="100" />
   <receiver
        android:name="com.google.firebase.iid.FirebaseInstanceIdReceiver"
        android:exported="true"
        android:permission="com.google.android.c2dm.permission.SEND">
        <intent-filter>
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />

            <category android:name="Your_package_name" />
        </intent-filter>
    </receiver>
All you have to do is just make the API key you are using has permission to the following APIs:
Firebase Installations API
Firebase Cloud Messaging API
Cloud Messaging
FCM Registration API

You can change the restrictions from your google cloud -> APIs & Services -> Credentials.