Mit Cloud Storage for Firebase können Sie von Nutzern erstellte Inhalte hochladen und freigeben, z. B. als Bilder und Videos. So können Sie Rich Media-Inhalte in Ihr Apps. Ihre Daten werden an einem Google Cloud Storage-Bucket: ein Objektspeicherlösung im Exabyte-Bereich mit Hochverfügbarkeit und globaler Verfügbarkeit Redundanz. Mit Cloud Storage for Firebase können Sie diese Dateien sicher hochladen von Mobilgeräten und Webbrowsern direkt übertragen. Komfort zu bieten.
Vorbereitung
- Installieren Sie das Firebase SDK.
- Fügen Sie die App in der Firebase Console Ihrem Firebase-Projekt hinzu.
Cloud Storage-Standard-Bucket erstellen
Wählen Sie im Navigationsbereich der Firebase-Konsole Speicher aus. Klicken Sie dann auf Jetzt starten.
Lesen Sie die Mitteilungen zum Schutz Ihrer Cloud Storage-Daten mithilfe der Sicherheitsfunktionen Regeln. Berücksichtigen Sie bei der Entwicklung Festlegen der Regeln für den öffentlichen Zugriff
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 Standorteinstellung erfordern, Cloud Firestore-Datenbank und Ihre App Engine App (Dies ist erforderlich, 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.
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 Lese- und Schreibzugriff auf Cloud Storage ist eingeschränkt, sodass nur authentifizierte Nutzer Lese- oder Schreibrechte haben Daten. Wenn Sie Authentication nicht einrichten möchten, können Sie konfigurieren Sie Ihre Regeln für den öffentlichen Zugriff.
Dadurch ist Cloud Storage für alle Nutzer zugänglich, auch für Nutzer, die Ihre App nicht verwenden. Sie sollten Cloud Storage daher wieder einschränken, wenn Sie die Authentifizierung einrichten.
Cloud Storage zu deiner App hinzufügen
Verwenden Sie Swift Package Manager, um Firebase-Abhängigkeiten zu installieren und zu verwalten.
- Gehen Sie in Xcode bei geöffnetem App-Projekt zu File > Pakete hinzufügen.
- Fügen Sie bei entsprechender Aufforderung das Firebase Apple Platforms SDK-Repository hinzu:
- Wählen Sie die Cloud Storage-Bibliothek aus.
- Fügen Sie in den Build-Einstellungen des Ziels im Bereich Other Linker Flags das Flag
-ObjC
hinzu. - Wenn Sie fertig, beginnt Xcode automatisch, Ihre Abhängigkeiten im Hintergrund aufzulösen und herunterzuladen.
https://github.com/firebase/firebase-ios-sdk.git
Cloud Storage einrichten
Sie müssen Firebase initialisieren, bevor eine Firebase-Referenz erstellt wird, oder verwendet. Wenn Sie dies bereits für eine andere Firebase-Funktion getan haben, können Sie diesen Schritt überspringen für diesen Schritt.
- Importieren Sie das Modul
FirebaseCore
in IhrUIApplicationDelegate
sowie alle anderen Firebase-Module, die Ihr App-Delegate verwendet. So verwenden Sie beispielsweise Cloud Firestore und Authentication:SwiftUI
import SwiftUI import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Swift
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Objective-C
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
- Konfigurieren Sie ein
FirebaseApp
freigegebene Instanz im Methodeapplication(_:didFinishLaunchingWithOptions:)
:SwiftUI
// Use Firebase library to configure APIs FirebaseApp.configure()
Swift
// Use Firebase library to configure APIs FirebaseApp.configure()
Objective-C
// Use Firebase library to configure APIs [FIRApp configure];
- Wenn Sie SwiftUI verwenden, müssen Sie einen Anwendungsdelegierten erstellen und diesen anhängen.
zu deiner
App
-Struktur überUIApplicationDelegateAdaptor
oderNSApplicationDelegateAdaptor
Außerdem müssen Sie das App-Delegate-Swizzling deaktivieren. Für Weitere Informationen finden Sie in der SwiftUI-Anleitung.SwiftUI
@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
-
Rufen Sie mit der standardmäßigen Firebase-App einen Verweis auf den Cloud Storage-Dienst ab:
Swift
let storage = Storage.storage()
Objective-C
FIRStorage *storage = [FIRStorage storage];
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 ist perfekt, wenn Sie Nutzende auf der ganzen Welt haben und ihre Daten in ihrer Nähe speichern. Sie können z. B. Buckets in den USA, Europa und Asien, um Daten für Nutzer in diesen Regionen zu speichern und so die Latenz zu verringern.
Der zweite Anwendungsfall ist hilfreich, wenn Sie Daten mit unterschiedlichen Zugriffsmustern haben. Sie können beispielsweise einen multiregionalen oder regionalen Bucket einrichten, in dem Bilder oder andere Inhalte, auf die häufig zugegriffen wird, sowie ein Nearline- oder Coldline-Bucket zur Speicherung von Nutzersicherungen oder anderen Inhalten, auf die selten zugegriffen wird.
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 verwenden. Instanz, um jedes zusätzliche Konto zu authentifizieren.
Mehrere Cloud Storage-Buckets verwenden
Wenn Sie einen anderen Cloud Storage-Bucket als den oben angegebenen Standard verwenden möchten, gehen Sie so vor:
oder mehrere Cloud Storage-Buckets in einer einzigen Anwendung verwenden, können Sie eine Instanz erstellen,
von FIRStorage
, die auf Ihren benutzerdefinierten Bucket verweisen:
Swift
// Get a non-default Cloud Storage bucket storage = Storage.storage(url:"gs://my-custom-bucket")
Objective-C
// Get a non-default Cloud Storage bucket FIRStorage storage = [FIRStorage storageWithURL:@"gs://my-custom-bucket"];
Mit importierten Buckets arbeiten
Wenn Sie einen vorhandenen Cloud Storage-Bucket in Firebase importieren,
Firebase den Zugriff auf diese Dateien über die
gsutil
-Tool, das im
Google Cloud SDK:
gsutil -m acl ch -r -u service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://<your-cloud-storage-bucket>
Ihre Projektnummer finden Sie wie in der Einführung zum Firebase-Projekte
Das gilt nicht für neu erstellte Buckets, da für diese standardmäßig Firebase zugelassen ist. Dies ist eine vorübergehende Maßnahme, künftig automatisch durchgeführt.
Benutzerdefinierte Firebase-App verwenden
Wenn du eine kompliziertere App mit einer benutzerdefinierten FirebaseApp
entwickelst, kannst du
Erstellen Sie eine Storage
-Instanz, die mit dieser Anwendung initialisiert wurde:
Swift
// Get the default bucket from a custom FirebaseApp storage = Storage.storage(app:customApp) // Get a non-default bucket from a custom FirebaseApp storage = Storage.storage(app:customApp, url:"gs://my-custom-bucket")
Objective-C
// Get the default bucket from a custom FIRApp FIRStorage storage = [FIRStorage storageForApp:customApp]; // Get a non-default bucket from a custom FIRApp FIRStorage storage = [FIRStorage storageForApp:customApp withURL:@"gs://my-custom-bucket"];
Nächste Schritte
Bereiten Sie die Einführung Ihrer App vor:
Aktivieren Sie App Check, damit nur Ihre Anwendungen auf Ihre Storage-Buckets zugreifen können.
Budget einrichten Warnungen für Ihr Projekt in der Google Cloud-Konsole.
Nutzung und Abrechnung überwachen Dashboard in der Firebase-Konsole, um einen Überblick über Nutzung in mehreren Firebase-Diensten. Weitere Informationen finden Sie auch auf der Seite Cloud Storage Nutzung Dashboard für weitere Informationen ausführliche Nutzungsinformationen.