Autentificering i Unity
Denne vejledning vil guide dig gennem opsætning af Unity-godkendelse i et Unity-projekt. Unity Autentificering giver dig mulighed for at administrere og godkende brugere i dine spil ved hjælp af Unitys Identity-værktøjssæt. Vi dækker de trin, der kræves for at konfigurere godkendelse, integrere det i dit projekt og implementere login-funktionalitet.
Forudsætninger
- Unity Hub og Unity Editor installeret.
- Unity projekt med Unity Services aktiveret.
- Unity konto og et aktivt projekt-id.
Trin 1: Konfigurer Unity-godkendelse i Unity Dashboard
- Log ind på Unity Dashboard.
- Vælg dit projekt, eller opret et nyt.
- Naviger til Authentication under "Services"-sektionen.
- Aktiver godkendelse ved at klikke på knappen Aktiver.
- Konfigurer godkendelsesindstillingerne efter behov, såsom brugerattributter, login-metoder og adgangskontrol.
Trin 2: Installer Unity Authentication Package
For at bruge Unity-godkendelse i dit projekt, skal du installere den relevante pakke.
- Åbn dit Unity-projekt.
- Naviger til Window > Package Manager.
- Søg efter Authentication i Package Manager.
- Klik på Installer for at tilføje godkendelsespakken til dit projekt.
Trin 3: Konfigurer initialiseringsscript
For at bruge godkendelse i dit spil, skal du initialisere Unity-tjenester og godkendelse under kørsel. Tilføj følgende kode i et C#-script (f.eks. AuthenticationManager.cs
), og vedhæft det til et GameObject i din scene.
using UnityEngine;
using Unity.Services.Core;
using Unity.Services.Authentication;
using System.Threading.Tasks;
public class AuthenticationManager : MonoBehaviour
{
async void Start()
{
await InitializeUnityServicesAsync();
}
private async Task InitializeUnityServicesAsync()
{
try
{
await UnityServices.InitializeAsync();
Debug.Log("Unity Services initialized successfully.");
if (!AuthenticationService.Instance.IsSignedIn)
{
await SignInAnonymously();
}
}
catch (System.Exception e)
{
Debug.LogError($"Error initializing Unity Services: {e.Message}");
}
}
private async Task SignInAnonymously()
{
try
{
await AuthenticationService.Instance.SignInAnonymouslyAsync();
Debug.Log("Signed in anonymously.");
}
catch (System.Exception e)
{
Debug.LogError($"Error signing in anonymously: {e.Message}");
}
}
}
Dette script initialiserer Unity-tjenester, når spillet starter, og logger brugeren ind anonymt, hvis de ikke allerede er logget ind.
Trin 4: Implementer log-in med Unity-godkendelse
Du kan også give muligheder for specifikke login-metoder, såsom e-mail eller Google-login, afhængigt af dit spils krav. Nedenfor er et eksempel på, hvordan du kan implementere login med Unity-godkendelse.
Eksempel: Log ind med e-mail og adgangskode
using UnityEngine;
using Unity.Services.Authentication;
using System.Threading.Tasks;
public class AuthenticationManager : MonoBehaviour
{
async void Start()
{
await InitializeUnityServicesAsync();
}
private async Task InitializeUnityServicesAsync()
{
try
{
await UnityServices.InitializeAsync();
Debug.Log("Unity Services initialized successfully.");
}
catch (System.Exception e)
{
Debug.LogError($"Error initializing Unity Services: {e.Message}");
}
}
public async Task SignInWithEmailAsync(string email, string password)
{
try
{
await AuthenticationService.Instance.SignInWithEmailAndPasswordAsync(email, password);
Debug.Log("Signed in with email successfully.");
}
catch (System.Exception e)
{
Debug.LogError($"Error signing in with email: {e.Message}");
}
}
}
For at kalde denne metode skal du oprette en UI-formular i Unity, så brugerne kan indtaste deres e-mail og adgangskode, og derefter kalde SignInWithEmailAsync
fra en UI-knaps onClick-hændelse.
Trin 5: Log ud
Til brugeradministration vil du måske også implementere en log-out-funktion. Sådan gør du:
public void SignOut()
{
AuthenticationService.Instance.SignOut();
Debug.Log("Signed out successfully.");
}
Kald denne metode, når du vil logge brugeren ud af dit spil.
Konklusion
Vi dækkede, hvordan du konfigurerer Unity-godkendelse i dit Unity-projekt, inklusive initialisering, anonymt login, e-mail-logon og log-out-funktionalitet. Med Unity-godkendelse kan du administrere dine brugere mere effektivt og forbedre sikkerheden i dine spil. For mere avancerede opsætninger, såsom brugerdefinerede login-udbydere eller sammenkædning af flere godkendelsesmetoder, henvises til den officielle Unity-dokumentation.