Erste Schritte mit Cloud Storage for Unity

Mit Cloud Storage for Firebase können Sie von Nutzern erstellte Inhalte wie Bilder und Videos hochladen und teilen. So können Sie Ihre Apps mit Rich-Media-Inhalten ausstatten. Ihre Daten werden in einem Google Cloud Storage-Bucket gespeichert, einer Objektspeicherlösung im Exabyte-Maßstab mit hoher Verfügbarkeit und globaler Redundanz. Mit Cloud Storage for Firebase können Sie diese Dateien sicher hochladen von Mobilgeräten und Webbrowsern direkt übertragen. Komfort zu bieten.

Hinweis

Bevor Sie Cloud Storage verwenden können, müssen Sie Folgendes tun:

  • Registrieren Sie Ihr Unity-Projekt und konfigurieren Sie es für die Verwendung von Firebase.

    • Wenn in Ihrem Unity-Projekt bereits Firebase verwendet wird, ist es bereits für Firebase registriert und konfiguriert.

    • Wenn Sie kein Unity-Projekt haben, können Sie Beispiel-App.

  • Fügen Sie Ihrem Unity-Projekt das Firebase Unity SDK (insbesondere FirebaseStorage.unitypackage) hinzu.

Das Hinzufügen von Firebase zu Ihrem Unity-Projekt umfasst Aufgaben sowohl in der Firebase Console als auch in Ihrem geöffneten Unity-Projekt. Sie laden beispielsweise Firebase-Konfigurationsdateien aus der Console herunter und verschieben sie dann in Ihr Unity-Projekt.

Cloud Storage-Standard-Bucket erstellen

  1. Wählen Sie im Navigationsbereich der Firebase-Konsole die Option Speicher aus. Klicken Sie dann auf Jetzt starten.

  2. Lesen Sie die Mitteilungen zum Schutz Ihrer Cloud Storage-Daten mithilfe von Sicherheitsregeln. Berücksichtigen Sie bei der Entwicklung Festlegen der Regeln für den öffentlichen Zugriff

  3. Wählen Sie einen Standort als Standardspeicherort aus. Cloud Storage Bucket.

    • Diese Standorteinstellung ist der standardmäßige Ressourcenstandort der Google Cloud Platform (GCP) für Ihr Projekt. Beachten Sie, dass dieser Speicherort für GCP-Dienste in Ihrem Projekt verwendet wird, die eine Speicherorteinstellung benötigen, insbesondere Ihre Cloud Firestore-Datenbank und Ihre App Engine-Anwendung (die erforderlich ist, wenn Sie Cloud Scheduler verwenden).

    • Wenn Sie keinen Speicherort auswählen können, verfügt Ihr Projekt bereits über einen standardmäßigen Speicherort für GCP-Ressourcen. Er wurde entweder während der Erstellung des Projekts oder beim Einrichten eines anderen Dienstes festgelegt, für den eine Speicherorteinstellung erforderlich ist.

    Wenn Sie den Tarif „Blaze“ nutzen, können Sie Erstellen Sie mehrere Buckets mit jeweils einem eigenen Bucket. location fest.

  4. Klicken Sie auf Fertig.

Öffentlichen Zugriff einrichten

Cloud Storage for Firebase bietet eine deklarative Regelsprache, mit der Sie um zu definieren, wie Ihre Daten strukturiert, wie sie indexiert werden und wann aus denen Ihre Daten gelesen und geschrieben werden können. Standardmäßig ist der Lese- und Schreibzugriff auf Cloud Storage eingeschränkt, sodass nur authentifizierte Nutzer Daten lesen oder schreiben können. Wenn Sie Authentication nicht einrichten möchten, können Sie Regeln für den öffentlichen Zugriff konfigurieren.

Dadurch wird Cloud Storage für jeden zugänglich, auch für Personen, die nicht dein App, also achte bei der Einrichtung darauf, dass du deine Cloud Storage wieder einschränkst Authentifizierung.

Auf die Klasse FirebaseStorage zugreifen

Firebase.Storage.FirebaseStorage ist der Einstiegspunkt für das Cloud Storage Unity SDK.

// Get a reference to the storage service, using the default Firebase App
FirebaseStorage storage = FirebaseStorage.DefaultInstance;

Du kannst Cloud Storage jetzt verwenden.

Sehen wir uns zunächst an, wie Sie ein Cloud Storage-Element erstellen Referenz.

Erweiterte Einrichtung

Für einige Anwendungsfälle ist eine zusätzliche Einrichtung erforderlich:

  • Cloud Storage Buckets werden verwendet in mehrere Regionen
  • Cloud Storage Buckets werden verwendet in verschiedenen Speicherklassen
  • Cloud Storage-Buckets mit mehreren authentifizierten Nutzern in derselben Anwendung verwenden

Der erste Anwendungsfall eignet sich perfekt, wenn Sie Nutzer auf der ganzen Welt haben und ihre Daten in ihrer Nähe speichern möchten. Sie können beispielsweise Buckets in den USA, Europa und Asien erstellen, um Daten für Nutzer in diesen Regionen zu speichern und so die Latenz zu reduzieren.

Der zweite Anwendungsfall ist hilfreich, wenn Sie Daten mit unterschiedlichen Zugriffsmustern haben. Beispiel: Sie können einen mehrregionalen oder regionalen Bucket einrichten, in dem Bilder oder andere häufig aufgerufene Inhalte gespeichert werden, und einen Nearline- oder Coldline-Bucket, in dem Nutzersicherungen oder andere selten aufgerufene Inhalte gespeichert werden.

In beiden Fällen sollten Sie mehrere Cloud Storage-Buckets verwenden.

Der dritte Anwendungsfall ist nützlich, wenn Sie eine App wie Google Drive erstellen, Nutzer haben mehrere angemeldete Konten, z. B. ein privates Konto. und einem Arbeitskonto). Sie können eine benutzerdefinierte Firebase App-Instanz verwenden, um jedes zusätzliche Konto zu authentifizieren.

Mehrere Cloud Storage-Buckets verwenden

Wenn Sie einen anderen Cloud Storage-Bucket als den oben genannten Standard verwenden oder mehrere Cloud Storage-Buckets in einer einzelnen App verwenden möchten, können Sie eine Instanz von FirebaseStorage erstellen, die auf Ihren benutzerdefinierten Bucket verweist:

// Get a non-default Storage bucket
var storage = FirebaseStorage.GetInstance("gs://my-custom-bucket");

Mit importierten Buckets arbeiten

Wenn Sie einen vorhandenen Cloud Storage-Bucket in Firebase importieren, müssen Sie Firebase über das gsutil-Tool, das im Google Cloud SDK enthalten ist, Zugriff auf diese Dateien gewähren:

gsutil -m acl ch -r -u service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://<your-cloud-storage-bucket>

Sie finden Ihre Projektnummer wie in der Einführung in Firebase-Projekte beschrieben.

Dies wirkt sich nicht auf neu erstellte Buckets aus, da diese den Standardzugriff haben Steuerelement zum Zulassen von Firebase festgelegt. Dies ist eine vorübergehende Maßnahme, künftig automatisch durchgeführt.

Benutzerdefinierte Firebase-App verwenden

Wenn Sie eine komplexere App mit einer benutzerdefinierten FirebaseApp erstellen, können Sie eine Instanz von FirebaseStorage erstellen, die mit dieser App initialisiert wird:

// Get the default bucket from a custom FirebaseApp
FirebaseStorage storage = FirebaseStorage.GetInstance(customApp);

// Get a non-default bucket from a custom FirebaseApp
FirebaseStorage storageCustom = FirebaseStorage.GetInstance(customApp, "gs://my-custom-bucket");

Nächste Schritte