You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity应用APK版本Firebase Authentication无法正常工作问题排查

解决Unity打包Android后Firebase认证失效问题

问题核心分析

从Logcat报错InvalidOperationException: Don't call other Firebase functions while CheckDependencies is running来看,问题出在Firebase依赖检查被重复触发,或者依赖检查过程中其他Firebase方法被调用,导致线程冲突。编辑器与Android真机的线程调度逻辑不同,因此出现编辑器正常、打包后失效的差异。

修正后的初始化代码

给初始化逻辑加锁避免重复执行,同时强制回调在Unity主线程执行:

using UnityEngine;
using Firebase;
using Firebase.Auth;
using System;

public class FirebaseInitScript : MonoBehaviour
{
    public static event Action OnFirebaseInitialized;
    public static bool firebaseReady;
    // 标记锁,防止重复触发依赖检查
    private static bool isCheckingDependencies;

    void Start()
    {
        CheckIfReady();
    }

    public static void CheckIfReady()
    {
        // 若正在检查则直接返回,避免重复执行
        if (isCheckingDependencies) return;
        
        isCheckingDependencies = true;
        Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(task =>
        {
            isCheckingDependencies = false;
            Firebase.DependencyStatus dependencyStatus = task.Result;
            if (dependencyStatus == Firebase.DependencyStatus.Available)
            {
                _ = Firebase.FirebaseApp.DefaultInstance;
                firebaseReady = true;
                Debug.Log("Firebase is ready for use.");
                OnFirebaseInitialized?.Invoke();
            }
            else
            {
                firebaseReady = false;
                Debug.LogError($"Could not resolve all Firebase dependencies: {dependencyStatus}");
            }
        });
    }
}

额外排查步骤

  • 确认google-services.json文件已放置在Assets/Plugins/Android目录,且打包时未被排除(检查Unity PlayerSettings→Android→Build Settings,确保该文件被包含进构建)。
  • 核对Firebase SDK版本与Unity版本的兼容性,避免版本不匹配导致适配问题。
  • 检查所有调用Firebase的业务代码,确保操作都在OnFirebaseInitialized事件触发后执行,禁止在依赖检查完成前调用任何Firebase API。

内容的提问来源于stack exchange,提问作者XaiVer Turgen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 18:47:14