Google is committed to advancing racial equity for Black communities. See how.
Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Beginnen Sie mit Cloud Storage für C ++

Mit Cloud Storage für Firebase können Sie benutzergenerierte Inhalte wie Bilder und Videos hochladen und freigeben, sodass Sie Rich Media-Inhalte in Ihre Apps integrieren können. 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 für Firebase können Sie diese Dateien sicher direkt von Mobilgeräten und Webbrowsern hochladen und so mühelos mit fleckigen Netzwerken umgehen.

Bevor Sie beginnen

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

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

    Wenn Ihr C ++ - Projekt bereits Firebase verwendet, ist es bereits für Firebase registriert und konfiguriert.

  • Fügen Sie das Firebase C ++ SDK zu Ihrem C ++ - Projekt hinzu.

Beachten Sie, dass das Hinzufügen von Firebase zu Ihrem C ++ - Projekt Aufgaben sowohl in der Firebase-Konsole als auch in Ihrem geöffneten C ++ - Projekt umfasst (Sie laden beispielsweise Firebase-Konfigurationsdateien von der Konsole herunter und verschieben sie dann in Ihr C ++ - Projekt).

Erstellen Sie einen Standard-Cloud-Speicher-Bucket

  1. Wählen Sie im Navigationsbereich der Firebase-Konsole Speicher aus , und klicken Sie dann auf Erste Schritte .

  2. Überprüfen Sie die Nachrichten zum Sichern Ihrer Cloud-Speicherdaten mithilfe von Sicherheitsregeln. Erwägen Sie während der Entwicklung, Ihre Regeln für den öffentlichen Zugriff einzurichten .

  3. Wählen Sie einen Speicherort für Ihren Standard-Cloud-Speicher-Bucket.

    • Diese Standorteinstellung ist der Standard-Ressourcenstandort Ihres Projekts für die Google Cloud Platform (GCP) . Beachten Sie, dass dieser Speicherort für GCP-Dienste in Ihrem Projekt verwendet wird, für die eine Standorteinstellung erforderlich ist, insbesondere für Ihre Cloud Firestore- Datenbank und Ihre App Engine- App (die erforderlich ist, wenn Sie Cloud Scheduler verwenden).

    • Wenn Sie keinen Speicherort auswählen können, verfügt Ihr Projekt bereits über einen Standardspeicherort für GCP-Ressourcen. Sie wurde entweder während der Projekterstellung oder beim Einrichten eines anderen Dienstes festgelegt, für den eine Standorteinstellung erforderlich ist.

    Wenn Sie sich im Blaze-Plan befinden, können Sie mehrere Buckets mit jeweils einem eigenen Standort erstellen .

  4. Klicken Sie auf Fertig .

Richten Sie den öffentlichen Zugriff ein

Cloud Storage für Firebase bietet eine deklarative Regelsprache, mit der Sie festlegen können, wie Ihre Daten strukturiert werden sollen, wie sie indiziert werden sollen und wann Ihre Daten gelesen und in sie geschrieben werden können. Standardmäßig ist der Lese- und Schreibzugriff auf Cloud Storage eingeschränkt, sodass nur authentifizierte Benutzer Daten lesen oder schreiben können. Um zu beginnen, ohne die Authentifizierung einzurichten, können Sie Ihre Regeln für den öffentlichen Zugriff konfigurieren .

Dadurch kann der Cloud-Speicher auch für Benutzer geöffnet werden, auch für Personen, die Ihre App nicht verwenden. Achten Sie daher darauf, Ihren Cloud-Speicher beim Einrichten der Authentifizierung erneut einzuschränken.

Erstellen und initialisieren Sie firebase::App

Bevor Sie auf Cloud Storage zugreifen können, müssen Sie die firebase::App erstellen und initialisieren.

Fügen Sie die Header-Datei für firebase::App :

#include "firebase/app.h"

Android

Erstellen Sie die firebase::App , indem Sie die JNI-Umgebung und einen jobject auf die Java-Aktivität als Argumente übergeben:

app = App::Create(AppOptions(), jni_env, activity);

iOS

Erstellen Sie die firebase::App :

app = App::Create(AppOptions());

firebase::storage::Storage Klasse firebase::storage::Storage

Die Klasse firebase::storage::Storage ist der Einstiegspunkt für das Cloud Storage C ++ SDK.

Storage* storage = Storage::GetInstance(app);

Sie können Cloud Storage jetzt verwenden!

Lassen Sie uns zunächst lernen, wie Sie eine Cloud-Speicherreferenz erstellen .

Erweiterte Einrichtung

Es gibt einige Anwendungsfälle, für die zusätzliche Einstellungen erforderlich sind:

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

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

In beiden Anwendungsfällen möchten Sie mehrere Cloud-Speicher-Buckets verwenden .

Der dritte Anwendungsfall ist nützlich, wenn Sie eine App wie Google Drive erstellen, mit der Benutzer mehrere angemeldete Konten haben können (z. B. ein persönliches Konto und ein Arbeitskonto). Sie können eine benutzerdefinierte Firebase App- Instanz verwenden, um jedes weitere Konto zu authentifizieren.

Verwenden Sie mehrere Cloud-Speicher-Buckets

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

// Get a non-default Cloud Storage bucket
Storage* storage = Storage::GetInstance("gs://my-custom-bucket");

Arbeiten mit importierten Eimern

Wenn Sie einen vorhandenen Cloud-Speicher-Bucket in Firebase importieren, müssen Sie Firebase die Möglichkeit gewähren, mit dem im Google Cloud SDK gsutil Tool gsutil auf diese Dateien gsutil :

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 zu Firebase-Projekten beschrieben .

Dies wirkt sich nicht auf neu erstellte Buckets aus, da für diese die Standardzugriffskontrolle festgelegt ist, um Firebase zuzulassen. Dies ist eine vorübergehende Maßnahme und wird in Zukunft automatisch durchgeführt.

Verwenden Sie eine benutzerdefinierte Firebase-App

Wenn Sie eine kompliziertere App mit einer benutzerdefinierten firebase::App erstellen, können Sie eine Instanz von firebase::storage::Storage erstellen, die mit dieser App initialisiert wurde:

// Get the default bucket from a custom firebase::App
Storage* storage = Storage::GetInstance(customApp);

// Get a non-default bucket from a custom firebase::App
Storage* storage = Storage::GetInstance(customApp, "gs://my-custom-bucket");

Nächste Schritte