Esempio n. 1
0
    public void InitializeAnalytics()
    {
        if (!base.Inited)
        {
            FirebaseAnalytics.SetAnalyticsCollectionEnabled(enabled: true);
            FirebaseAnalytics.SetUserId(PlayerData.Instance.PlayerId);
            PersistentSingleton <IAPService> .Instance.IAPValidated.Subscribe(delegate
            {
                LogPurchaseEvent();
            });

            PersistentSingleton <IAPService> .Instance.IAPInvalidated.Subscribe(delegate
            {
                LogInvalidPurchaseEvent();
            });

            base.Inited = true;
        }
    }
Esempio n. 2
0
    // Start is called before the first frame update
    void Awake()
    {
        if (instance == null)
        {
            DontDestroyOnLoad(gameObject);
            instance = this;
        }
        else
        {
            Destroy(gameObject);
        }
        Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task =>
        {
            FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
        });

        //Firebase.Messaging.FirebaseMessaging.TokenReceived += OnTokenReceived;
        //Firebase.Messaging.FirebaseMessaging.MessageReceived += OnMessageReceived;
    }
        internal override void Initialize()
        {
            if (!frameworkValues.UseFirebase)
            {
                Status = ServiceStatus.Off;
                return;
            }

            ownInterstitial = Master.Resolve <FirebaseOwnInterstitial>();

            this.Log("[FIREBASE] Initializing Firebase...", LogLevel.FrameworkInfo);

            FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task =>
            {
                var dependencyStatus = task.Result;
                if (dependencyStatus == DependencyStatus.Available)
                {
                    FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);

                    Firebase.Messaging.FirebaseMessaging.TokenRegistrationOnInitEnabled = false;
                    Firebase.Messaging.FirebaseMessaging.TokenReceived   += OnTokenReceived;
                    Firebase.Messaging.FirebaseMessaging.MessageReceived += OnMessageReceived;

                    this.Log("[FIREBASE] Initialization completed.", LogLevel.FrameworkInfo);
                    Status = ServiceStatus.Initialized;

                    LogEvent("firebase_started");

                    if (frameworkValues.UseOwnIntertital)
                    {
                        InitializeRemoteConfig();
                        FetchDataAsync();
                    }
                }
                else
                {
                    this.Log("[FIREBASE] Initialization failed. DependencyStatus: " + dependencyStatus, LogLevel.FrameworkErrorInfo);
                    Status = ServiceStatus.FailedToInitialize;
                    ownInterstitial.OnFirebaseInitializationFailed();
                }
            });
        }
Esempio n. 4
0
    protected override bool AdapterInit(SDKAdapterConfig adapterConfig)
    {
        //Android 版 Firebase Unity SDK 需要使用 Google Play 服务。您必须先将 Google Play 服务更新为最新版本,然后才能使用该 SDK。
        Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task =>
        {
            var dependencyStatus = task.Result;
            if (dependencyStatus == Firebase.DependencyStatus.Available)
            {
                // Create and hold a reference to your FirebaseApp,
                // where app is a Firebase.FirebaseApp property of your application class.
                //   app = Firebase.FirebaseApp.DefaultInstance;

                // Set a flag here to indicate whether Firebase is ready to use by your app.

                FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
                //firebase初始化成功后调用FirebaseRemote
                //FirebaseRemoteMgr.Instance.Init();

                //FirebaseAnalytics.SetUserId("my_user");
                // Set default session duration values.
                //FirebaseAnalytics.SetMinimumSessionDuration(new TimeSpan(0, 0, 10));
                //FirebaseAnalytics.SetSessionTimeoutDuration(new TimeSpan(0, 30, 0));
                //FirebaseAnalytics.SetUserId(userid_af);
                // FirebaseAnalytics.SetUserProperty("userID", "");
                if (m_AdapterConfig.isDebugMode)
                {
                    Log.I("FirebaseAnalysisAdapter init success");
                }

                InitSuccess = true;
            }
            else
            {
                Log.E(System.String.Format(
                          "Could not resolve all Firebase dependencies: {0}", dependencyStatus));
                // Firebase Unity SDK is not safe to use here.
                InitSuccess = false;
            }
        });

        return(true);
    }
Esempio n. 5
0
        public static void Setup(string userId)
        {
            DebugLog.Normal("Firebase Analytics : データ収集を有効化します");
            FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);

#if UNITY_ANDROID
            FirebaseAnalytics.SetUserProperty(
                "OS",
                "Android");
#elif UNITY_IOS
            FirebaseAnalytics.SetUserProperty(
                "OS",
                "iOS");
#else
            FirebaseAnalytics.SetUserProperty(
                "OS",
                "Other");
#endif
            FirebaseAnalytics.SetSessionTimeoutDuration(new TimeSpan(0, 30, 0));
            FirebaseAnalytics.SetUserId(userId);
        }
Esempio n. 6
0
    // Start is called before the first frame update
    void Start()
    {
        FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task =>
        {
            FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
        });

        /*#if PLATFORM_ANDROID
         *
         * if (!Permission.HasUserAuthorizedPermission(Permission.ExternalStorageRead) || !Permission.HasUserAuthorizedPermission(Permission.ExternalStorageWrite))
         * {
         *  Permission.RequestUserPermission(Permission.ExternalStorageWrite);
         *
         * }
         *
         #endif*/

        _auth = FirebaseAuth.DefaultInstance;

        FirebaseAuth.DefaultInstance.StateChanged += HandleAuthStateChanged;
    }
Esempio n. 7
0
        public static void Initialize()
        {
            if (!FrameworkValues.UseFirebase)
            {
                return;
            }

            FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task =>
            {
                var dependencyStatus = task.Result;
                if (dependencyStatus == DependencyStatus.Available)
                {
                    FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);

                    Firebase.Messaging.FirebaseMessaging.TokenRegistrationOnInitEnabled = false;
                    Firebase.Messaging.FirebaseMessaging.TokenReceived   += OnTokenReceived;
                    Firebase.Messaging.FirebaseMessaging.MessageReceived += OnMessageReceived;

                    FirebaseIsReady = true;

                    LogEvent("game_started");

                    if (FrameworkValues.UseOwnIntertital)
                    {
                        InitializeRemoteConfig();
                        FetchDataAsync();
                    }
                }
                else
                {
                    FirebaseIsReady    = false;
                    FirebaseInitFailed = true;

                    Debug.LogError("FazApp: Could not resolve all Firebase dependencies: " + dependencyStatus);

                    return;
                }
            });
        }
Esempio n. 8
0
    // Start is called before the first frame update
    async void Start()
    {
        if (MainController.init == false)
        {
            var dependencyStatus = await FirebaseApp.CheckAndFixDependenciesAsync();

            if (dependencyStatus == DependencyStatus.Available)
            {
                OnFirebaseInitialized.Invoke();
            }



            //below this comment is additional code, added to the original
            await FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(continuationAction: task =>
            {
                FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
            });

            MainController.init = true;
        }
    }
Esempio n. 9
0
    //in order for a player to connect to the database, make sure this step happens first to set up the database instance
    public void CheckForDependencies()
    {
        FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task => {
            var dependencyStatus = task.Result;
            //Checks to make sure Database is ready to go
            if (dependencyStatus == DependencyStatus.Available)
            {
                //Setting up the Default Instance for the Database
                app = FirebaseApp.DefaultInstance;
                app.SetEditorDatabaseUrl("https://monster-defender.firebaseio.com/");
                FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);

                Test();
            }
            else
            {
                Debug.LogError(string.Format(
                                   "Could not resolve all Firebase dependencies: {0}", dependencyStatus));
                // Firebase Unity SDK is not safe to use here.
            }
        });
    }
Esempio n. 10
0
    private static int authPhases = 0;//1=authenticated; 0=none; -1=trying


    public static void Setup()
    {
        if (setupReady)
        {
            return;
        }

        FirebaseApp.LogLevel = LogLevel.Debug;

        FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(task =>
        {
            var dependencyStatus = task.Result;
            if (dependencyStatus == DependencyStatus.Available)
            {
                // Create and hold a reference to your FirebaseApp,
                // where app is a Firebase.FirebaseApp property of your application class.
                FirebaseApp app = FirebaseApp.DefaultInstance;
                // Set a flag here to indicate whether Firebase is ready to use by your app.
                setupReady = true;
                // user default
                SetUserId(Application.buildGUID);

                //analytics
                FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
                FirebaseAnalytics.SetSessionTimeoutDuration(new TimeSpan(0, 30, 0));

                // listeners
                DynamicLinks.DynamicLinkReceived += OnDynamicLink;
            }
            else
            {
                Debug.LogError(System.String.Format(
                                   "Could not resolve all Firebase dependencies: {0}", dependencyStatus));
                // Firebase Unity SDK is not safe to use here.
            }
        }
                                                                            );
    }
        public static void InitialiseFirebase()
        {
            FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task =>
            {
                var dependencyStatus = task.Result;

                if (dependencyStatus == DependencyStatus.Available)
                {
                    Debug.Log($"Firebase active.");
                    FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);

                    app = FirebaseApp.DefaultInstance;

                    fireBaseActive = true;
                }
                else
                {
                    Debug.LogError($"Could not resolve all Firebase dependencies: {dependencyStatus}. Firebase inactive");
                    app            = null;
                    fireBaseActive = false;
                }
            });
        }
Esempio n. 12
0
    void Start()
    {
        Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task => {
            FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
            var dependencyStatus = task.Result;
            if (dependencyStatus == Firebase.DependencyStatus.Available)
            {
                // Create and hold a reference to your FirebaseApp,
                // where app is a Firebase.FirebaseApp property of your application class.
                //   app = Firebase.FirebaseApp.DefaultInstance;

                // Set a flag here to indicate whether Firebase is ready to use by your app.
            }
            else
            {
                UnityEngine.Debug.LogError(System.String.Format(
                                               "Could not resolve all Firebase dependencies: {0}", dependencyStatus));
                // Firebase Unity SDK is not safe to use here.
            }
        });
        Firebase.Messaging.FirebaseMessaging.TokenReceived   += OnTokenReceived;
        Firebase.Messaging.FirebaseMessaging.MessageReceived += OnMessageReceived;
    }
Esempio n. 13
0
    /// <summary>
    /// Custom Session tracking, backup of Firebase default (tracks when Analytics singleton inits).
    /// </summary>
    public static void OnSession()
    {
        FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);

        TrackEvent(FirebaseCustomEventNames.EventSessionInit);
    }
Esempio n. 14
0
 private void FBAInitialize()
 {
     FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
     firebaseInitialized = true;
 }
Esempio n. 15
0
 // Update is called once per frame
 void InitializeFirebase()
 {
     FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
     FirebaseAnalytics.SetMinimumSessionDuration(new TimeSpan(0, 0, 10));
     FirebaseAnalytics.SetCurrentScreen("Main menu", "main screen");
 }
Esempio n. 16
0
 // Start is called before the first frame update
 void Start()
 {
     FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(continuationAction: task => {
         FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
     });
 }
    public static void InitializeFirebase(Action <FirebaseStatus> status = null, bool initRemote = false)
    {
#if USE_FIREBASE
        if (instance == null)
        {
            status?.Invoke(FirebaseStatus.Faulted);
            Debug.LogError("[Firebase] NULL");
            return;
        }

        if (DependencyStatus == DependencyStatus.Available &&
            Status != FirebaseStatus.Initialized &&
            Status != FirebaseStatus.Initialing)
        {
            try
            {
                Status = FirebaseStatus.Initialing;
                Debug.Log("[Firebase] Initialize " + Status);

                try
                {
                    FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
                    Debug.Log("[Firebase] Analytics " + "Initialized");
                }
                catch (FirebaseException ex)
                {
                    Debug.LogError("[Firebase] Analytics " + "Initialized " + ex.Message);
                }
                catch (Exception ex)
                {
                    Debug.LogError("[Firebase] Analytics " + "Initialized " + ex.Message);
                }

                try
                {
                    //FirebaseMessaging.TokenReceived += OnTokenReceived;
                    //FirebaseMessaging.MessageReceived += OnMessageReceived;

                    ////FirebaseMessaging.SubscribeAsync(topic).ContinueWith(task =>
                    ////{
                    ////    LogTaskCompletion(task, "[Firebase] SubscribeAsync");
                    ////});

                    //// This will display the prompt to request permission to receive
                    //// notifications if the prompt has not already been displayed before. (If
                    //// the user already responded to the prompt, thier decision is cached by
                    //// the OS and can be changed in the OS settings).
                    //FirebaseMessaging.RequestPermissionAsync().ContinueWith(task =>
                    //{
                    //    LogTaskCompletion(task, "[Firebase] RequestPermissionAsync");
                    //});
                    Debug.Log("[Firebase] Messaging " + "Initialized");
                }
                catch (FirebaseException ex)
                {
                    Debug.LogError("[Firebase] Messaging " + "Initialized " + ex.Message);
                }
                catch (Exception ex)
                {
                    Debug.LogError("[Firebase] Messaging " + "Initialized " + ex.Message);
                }

                try
                {
                    // if (initRemote)
                    // {
                    //     if (defaultRemoteConfig != null && defaultRemoteConfig.Count > 0)
                    //     {
                    //         FirebaseRemoteConfig.SetDefaults(defaultRemoteConfig);
                    //         ConfigSettings remoteSettings = FirebaseRemoteConfig.Settings;
                    //         remoteSettings.IsDeveloperMode = isDebugMode;
                    //         Debug.Log("[Firebase] RemoteConfig " + "Initialized");
                    //     }
                    //     else
                    //     {
                    //         Debug.LogError("defaultRemoteConfig NULL or EMPTY! Please set defaultRemoteConfig befor call Init");
                    //     }
                    // }
                }
                catch (FirebaseException ex)
                {
                    Debug.LogError("[Firebase] RemoteConfig " + "Initialized " + ex.Message);
                }
                catch (Exception ex)
                {
                    Debug.LogError("[Firebase] RemoteConfig " + "Initialized " + ex.Message);
                }

                Status = FirebaseStatus.Initialized;
                Debug.Log("[Firebase] Status " + Status);
                status?.Invoke(Status);
            }
            catch (FirebaseException ex)
            {
                Status = FirebaseStatus.UnkownError;
                Debug.LogError("[Firebase] Initialize " + Status + "\n" + ex.Message);
                status?.Invoke(Status);
            }
            catch (Exception ex)
            {
                Status = FirebaseStatus.UnkownError;
                Debug.LogError("[Firebase] Initialize " + Status + "\n" + ex.Message);
                status?.Invoke(Status);
            }
        }
        else
        {
            Debug.Log("[Firebase] Initialize again " + Status);
            status?.Invoke(Status);
        }
#endif
    }
Esempio n. 18
0
 // Enable or disable analytics collection (enabled by default)
 public static void SetAnalyticsEnabled(bool wantEnabled)
 {
             #if analytics
     FirebaseAnalytics.SetAnalyticsCollectionEnabled(wantEnabled);
             #endif
 }