public void OnClick_Register()
 {
     Loading(true);
     SGFirebase.AuthCreateUser(emailRegister.text, passRegister.text);
     authAttemptRegister = true;
     timecount           = 0f;
 }
 public void OnClick_ForgotPass()
 {
     Loading(true);
     SGFirebase.AuthResetPass(emailForgot.text);
     authAttemptForgot = true;
     timecount         = 0f;
 }
Example #3
0
 void OnApplicationQuit()
 {
     if (firebaseActivate)
     {
         SGFirebase.Dispose();
     }
 }
Example #4
0
 // Use this for initialization
 void Start()
 {
     updatesBeforeException = 0;
     SGFirebase.Setup();
     Crashlytics.SetCustomKey("chave", "valor");
     Crashlytics.Log("Log de erros aparece aqui");
 }
Example #5
0
    void Awake()
    {
        if (!_instance)
        {
            _instance = this;
        }
        else
        {
            Destroy(gameObject);
        }

        DontDestroyOnLoad(_instance);

        enable = SGFirebase.RemoteSettings(remoteSettingsAdsEnable, "0");

        if (dontShowUp)
        {
            _instance.DestroyBanner();
        }
        else if (enable == "0")
        {
            _instance.DestroyBanner();
        }
        else
        {
            _instance.RequestBanner();
        }
    }
Example #6
0
 public static void SetCustomKey(string key, string value)
 {
     sKey   = key;
     sValue = value;
     SGFirebase.SetCustomKey(key, value);
     Debug.Log("Key: " + key + " Value: " + value);
 }
 public void OnClick_Login()
 {
     Loading(true);
     SGFirebase.Authentication(emailLogin.text, passLogin.text);
     authAttemptLogin = true;
     timecount        = 0f;
 }
Example #8
0
 public static void LogWarning(object message)
 {
     if (DebugMode)
     {
         SGFirebase.Log("Warning: " + message.ToString());
         Debug.LogWarning(message);
         LogText = "[W]" + message.ToString();
     }
 }
Example #9
0
 public static void LogError(object message)
 {
     if (DebugMode)
     {
         SGFirebase.Log("Error: " + message.ToString());
         Debug.LogError(message);
         LogText = "[E]" + message.ToString();
     }
 }
Example #10
0
    // Start is called before the first frame update
    void Start()
    {
        string activate = SGFirebase.RemoteSettings(remoteSettings, "0");

        button = GetComponent <Button>();
        if (activate == "1")
        {
            StartCoroutine(Click());
        }
    }
    public static void UploadXML(object dataSerializable, string key)
    {
        DatabaseReference referenceRTD = null;
        string            json;

        if (remoteStatus == -1)
        {
            return;
        }

        if (string.IsNullOrEmpty(SGFirebase.userId))
        {
            return;
        }

        json = JsonUtility.ToJson(dataSerializable, false);
        if (string.IsNullOrEmpty(json))
        {
            return;
        }

        // save into remote dabatase
        referenceRTD = SGFirebase.RealTimeDatabase("saved-games/" + SGFirebase.userId + "/" + key);
        if (referenceRTD == null)
        {
            return;
        }

        remoteStatus = -1;
        lastError    = "";

        referenceRTD.SetValueAsync(json).ContinueWith(task => {
            if (task.IsCanceled)
            {
                lastError    = task.Exception.ToString();
                remoteStatus = 0;
                return;
            }
            if (task.IsFaulted)
            {
                lastError    = task.Exception.InnerExceptions[0].InnerException.Message;
                remoteStatus = 0;
                return;
            }

            if (task.IsCompleted)
            {
                remoteStatus = 1;
                return;
            }
        });

        return;
    }
Example #12
0
    public static void ForceException()
    {
        SGFirebase.Log("FORCED EXCEPTION!");
        // Throw an exception implementation
        throw new System.Exception("FORCED EXCEPTION!");
#if UNITY_EDITOR
        // nothing
#else
        // Causes an error that will crash the app at the platform level (Android or iOS)
        throw new InvalidOperationException("FORCED EXCEPTION!");
        Utils.ForceCrash(ForcedCrashCategory.FatalError);
#endif
    }
    void Start()
    {
        enable = SGFirebase.RemoteSettings(remoteSettingsAdsEnable, "0");

        if (enable != "0")
        {
            SGAdvertising.Setup();
            if (SGAdvertising.SetupReady)
            {
                RequestInterstitial();
            }
        }
    }
    // Start is called before the first frame update
    void Start()
    {
        rectTransform = GetComponent <RectTransform>();

        string enable = SGFirebase.RemoteSettings(remoteSettingsAdsEnable, "0");

        if (enable == "0")
        {
            rectTransform.offsetMin = new Vector2(rectTransform.offsetMin.x, 0);
        }
        else
        {
            rectTransform.offsetMin = new Vector2(rectTransform.offsetMin.x, adBottom);
        }
    }
    public static void RemoveXML(string key)
    {
        DatabaseReference referenceRTD = null;

        if (remoteStatus == -1)
        {
            return;
        }

        if (string.IsNullOrEmpty(SGFirebase.userId))
        {
            return;
        }

        // save into remote dabatase
        referenceRTD = SGFirebase.RealTimeDatabase("saved-games/" + SGFirebase.userId + "/" + key);
        if (referenceRTD == null)
        {
            return;
        }

        remoteStatus = -1;
        lastError    = "";

        referenceRTD.RemoveValueAsync().ContinueWith(task => {
            if (task.IsCanceled)
            {
                lastError    = task.Exception.ToString();
                remoteStatus = 0;
                return;
            }
            if (task.IsFaulted)
            {
                lastError    = task.Exception.InnerExceptions[0].InnerException.Message;
                remoteStatus = 0;
                return;
            }

            if (task.IsCompleted)
            {
                remoteStatus = 1;
                return;
            }
        });

        return;
    }
    public static void DownloadXMLs()
    {
        DatabaseReference referenceRTD = null;

        if (remoteStatus == -1)
        {
            return;
        }

        if (string.IsNullOrEmpty(SGFirebase.userId))
        {
            return;
        }

        // remote dabatase
        referenceRTD = SGFirebase.RealTimeDatabase("saved-games/" + SGFirebase.userId);
        if (referenceRTD == null)
        {
            return;
        }

        remoteStatus = -1;
        lastError    = "";
        snapshot     = null;

        referenceRTD.GetValueAsync().ContinueWith(task => {
            if (task.IsCanceled)
            {
                lastError    = task.Exception.ToString();
                remoteStatus = 0;
                return;
            }
            if (task.IsFaulted)
            {
                lastError    = task.Exception.InnerExceptions[0].InnerException.Message;
                remoteStatus = 0;
                return;
            }
            if (task.IsCompleted)
            {
                remoteStatus = 1;
                snapshot     = task.Result;
                return;
            }
        });
    }
Example #17
0
    private void Setup()
    {
        if (string.IsNullOrEmpty(recordSetKey))
        {
            referenceRTD = SGFirebase.RealTimeDatabase(referenceKey);
        }
        else
        {
            referenceRTD = SGFirebase.RealTimeDatabase(referenceKey + "/" + recordSetKey);
        }
        if (referenceRTD == null)
        {
            return;
        }

        referenceRTD.ValueChanged += ValueChanged;
    }
Example #18
0
    void Update()
    {
        // try first remote settings
        if (rsFirstAttempt && SGFirebase.RemoveSettingsTryUpdate())
        {
            CheckUpgrade();
            rsFirstAttempt = false;
            Debug.Log("Remote Settings: Save fresh data to PlayerPrefab");
        }

        // try authenticate
        if (authAnonymous && authFirstAttempt && SGFirebase.SetupReady)
        {
            if (!SGFirebase.AuthGetPersistent())
            {
                SGFirebase.Authentication();
            }
            authFirstAttempt = false;
        }
    }
Example #19
0
    /// <summary>
    /// Verificar via remote settings a necessita de atualização do App, verificando a versão
    /// https://console.firebase.google.com/project/learn-english-gamification/config
    /// </summary>
    private void CheckUpgrade()
    {
        string upgrade = SGFirebase.RemoteSettings(remoteSettingsAppUpgrade, SGEnvironment.GetVersion());

        upgrade = upgrade.Trim();

        // check
        if (string.IsNullOrEmpty(upgrade))
        {
            return;
        }
        // check
        if (upgrade == SGEnvironment.GetVersion())
        {
            return;
        }

        // split parts
        string[] newVersion = upgrade.Split('.');
        string[] version    = SGEnvironment.GetVersion().Split('.');

        // check
        if (newVersion.Length < 2 || version.Length < 2)
        {
            return;
        }

        // upgrade immediately or later
        if (newVersion[0] != version[0])
        {
            Debug.LogWarning("Upgrade Immediately: Old " + version[1] + " - New " + newVersion[1]);
            msgUpgradeNow.SetActive(true);
        }
        else if (newVersion[1] != version[1])
        {
            Debug.LogWarning("Upgrade: Old " + version[1] + " - New " + newVersion[1]);
            msgUpgrade.SetActive(true);
        }
    }
Example #20
0
    void Start()
    {
        if (firebaseActivate)
        {
            SGFirebase.Setup();
            if (Debug.isDebugBuild)
            {
                StartCoroutine(SGFirebase.RemoteSettingsCountDown(debugRemoteSettingsIntervalUpdate));
            }
            else
            {
                StartCoroutine(SGFirebase.RemoteSettingsCountDown(remoteSettingsIntervalUpdate));
            }
        }
        //analytics
        SGAnalytics.AnalyticsTraking(SGAnalytics.AnalyticsEvents.StartGame);
        //adversiting
        SGAdvertising.Setup();

        StartGame();

        // sync scenes
        SGScenes.IndexAbout        = indexAbout;
        SGScenes.IndexTermsPrivacy = indexTermsPrivacy;
        SGScenes.IndexEnding       = indexEnding;
        SGScenes.IndexFirstLevel   = indexFirstLevel;
        SGScenes.IndexGameOver     = indexGameOver;
        SGScenes.IndexHome         = indexHome;
        SGScenes.IndexLoading      = indexLoading;
        SGScenes.IndexLoadSave     = indexLoadSave;
        SGScenes.IndexSettings     = indexSettings;
        SGScenes.IndexAuth         = indexAuth;
        SGScenes.IndexHelp         = indexHelp;

        SGDeepLink.ReceiveExternalCall(deepLinkParam);
    }
Example #21
0
 public static void SetUserId(string id)
 {
     SGFirebase.SetUserId(id);
     Debug.Log("SetUserId: " + id);
 }
Example #22
0
 public static void Exception(System.Exception e)
 {
     SGFirebase.LogException(e);
     Debug.LogException(e);
 }
 public void OnClick_Delete()
 {
     SGFirebase.AuthDeleteUser();
 }
 public void OnClick_Logout()
 {
     SGFirebase.AuthSignOut();
 }
    void Update()
    {
        if (authAttemptLogin)
        {
            timecount += Time.deltaTime;

            if (SGFirebase.Auth == 0)
            {
                errorLogin.text  = SGFirebase.LastError;
                authAttemptLogin = false;

                Loading(false);
            }
            else if (SGFirebase.Auth == 1)
            {
                errorLogin.text    = "";
                errorRegister.text = "";
                authAttemptLogin   = false;

                LoadHome();
                //Loading(false);
            }
        }

        if (authAttemptRegister)
        {
            timecount += Time.deltaTime;

            if (SGFirebase.Auth == 0)
            {
                errorRegister.text  = SGFirebase.LastError;
                authAttemptRegister = false;

                Loading(false);
            }
            else if (SGFirebase.Auth == 1)
            {
                errorLogin.text     = "";
                errorRegister.text  = "";
                authAttemptRegister = false;

                infoLogin.text = "Registration successful. Please do not forget to validate your email before the first login.";
                OnClick_ActiveLogin();
                Loading(false);
            }
        }

        if (authAttemptForgot)
        {
            timecount += Time.deltaTime;

            if (SGFirebase.Auth == 0)
            {
                errorForgot.text  = SGFirebase.LastError;
                authAttemptForgot = false;

                Loading(false);
            }
            else if (SGFirebase.Auth == 1)
            {
                errorLogin.text   = "";
                errorForgot.text  = "";
                authAttemptForgot = false;

                infoLogin.text = "Email successfully sent. Please follow the instructions on it before login.";
                OnClick_ActiveLogin();
                Loading(false);
            }
        }

        if (timecount > timeout)
        {
            errorLogin.text     = "The server response is taking too long... try again ?";
            errorRegister.text  = "The server response is taking too long... try again ?";
            errorForgot.text    = "The server response is taking too long... try again ?";
            authAttemptLogin    = false;
            authAttemptRegister = false;
            authAttemptForgot   = false;
            SGFirebase.AuthCancelAttempts();
            Loading(false);
            timecount = 0f;
        }
    }