VR Oculus 2 through Unity with Firebase integration

42 Views Asked by At

I am working on a project to integrate the VR App into a firebase database. I want to store the username and login info from the application to the database.

I have multiple codes such as the C# Code for the User Registration, and Firebase Initialization. I have my database setup to accept read and write.

using UnityEngine;
using Firebase;
using Firebase.Database;
using Firebase.Extensions;

public class FirebaseSetup : MonoBehaviour
{
    private DatabaseReference dbReference;

    void Start()
    {
        // Initialize Firebase Database
        FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task =>
        {
            if (task.Result == DependencyStatus.Available)
            {
                // Get the default instance of the Firebase app
                FirebaseApp app = FirebaseApp.DefaultInstance;

                // Set the custom Firebase Realtime Database URL
                string firebaseDatabaseURL = "https://silid-ai-939a6-default-rtdb.firebaseio.com/";
                FirebaseDatabase.DefaultInstance.App.Options.DatabaseUrl = new System.Uri(firebaseDatabaseURL);

                // Get the root reference location of the database
                dbReference = FirebaseDatabase.DefaultInstance.RootReference;

                Debug.Log("Firebase Initialized Successfully!");
            }
            else
            {
                Debug.LogError("Failed to initialize Firebase.");
                // Handle initialization failure
            }
        });
    }

    public void WriteDataToDatabase(string key, string value)
    {
        // Write data to the database
        dbReference.Child(key).SetValueAsync(value).ContinueWith(task =>
        {
            if (task.IsCompleted && !task.IsFaulted && !task.IsCanceled)
            {
                Debug.Log("Data written to the database successfully!");
            }
            else
            {
                Debug.LogError("Failed to write data to the database: " + task.Exception);
            }
        });
    }
}
using UnityEngine;
using UnityEngine.SceneManagement; // Add this line for SceneManager
using UnityEngine.UI;
using Firebase;
using Firebase.Database;
using TMPro;

public class DatabaseManager : MonoBehaviour
{
    public TMP_InputField firstnameField;
    public TMP_InputField lastnameField;
    public TMP_InputField usernameInput;
    public TMP_InputField passwordInput;

    private string userID;
    private DatabaseReference dbReference;

    void Start()
    {
        userID = SystemInfo.deviceUniqueIdentifier;
        dbReference = FirebaseDatabase.DefaultInstance.RootReference;
    }

    public void CreateUser()
    {
        User newUser = new User(firstnameField.text, lastnameField.text, usernameInput.text, passwordInput.text);
        string json = JsonUtility.ToJson(newUser);

        dbReference.Child("users").Child(userID).SetRawJsonValueAsync(json);
    }
}

public class User
{
    public string firstnameInput;
    public string lastnameInput;
    public string usernameInput;
    public string passwordInput;

    public User(string firstnameInput, string lastnameInput, string usernameInput, string passwordInput)
    {
        this.passwordInput = firstnameInput;
        this.passwordInput = lastnameInput;
        this.usernameInput = usernameInput;
        this.passwordInput = passwordInput;
    }
}
0

There are 0 best solutions below