Cloud Storage for Firebase, resim ve video gibi kullanıcı tarafından oluşturulan içerikleri yüklemenize ve paylaşmanıza olanak tanır. Böylece, uygulamalarınıza zengin medya içerikleri ekleyebilirsiniz. Verileriniz, yüksek kullanılabilirlik ve küresel yedekleme sunan bir exabayt ölçekli nesne depolama çözümü olan Google Cloud Storage paketinde depolanır. Cloud Storage for Firebase, bu dosyaları doğrudan mobil cihazlardan ve web tarayıcılarından güvenli bir şekilde yüklemenize olanak tanır. Böylece, bağlantının zayıf olduğu ağlarda sorun yaşamazsınız.
Başlamadan önce
Henüz yapmadıysanız Apple platform uygulamaları için başlangıç kılavuzunu tamamladığınızdan emin olun. Bunlardan bazıları:
Firebase projesi oluşturma.
Apple platformları uygulamanızı projeye kaydettikten sonra Firebase kitaplığını ve Firebase yapılandırma dosyanızı (
GoogleService-Info.plist
) uygulamanıza ekleyerek uygulamanızı Firebase'e bağlayın.
Firebase projenizin kullandıkça öde Blaze fiyatlandırma planında olduğundan emin olun. Firebase ve Google Cloud'da yeniyseniz 300 ABD doları kredi almaya uygun olup olmadığınızı kontrol edin.
Varsayılan Cloud Storage paketi oluşturma
Firebase konsolunun gezinme bölmesinde Depolama'yı seçin.
Projeniz henüz kullandıkça öde Blaze fiyatlandırma planında değilse projenizi yükseltmeniz istenir.
Başlayın'ı tıklayın.
Varsayılan paketiniz için bir konum seçin.
,US-CENTRAL1
veUS-EAST1
'teki paketler, Google Cloud Storage için "Daima Ücretsiz" katmanından yararlanabilir. Diğer tüm konumlardaki paketler Google Cloud Storage fiyatlandırma ve kullanım kurallarına uyar.US-WEST1
Dilerseniz daha sonra her biri kendi konumuna sahip birden fazla paket oluşturabilirsiniz.
Varsayılan paketiniz için Firebase Security Rules öğesini yapılandırın. Geliştirme sırasında kurallarınızı herkese açık erişim için ayarlama seçeneğini değerlendirin.
Bitti'yi tıklayın.
Artık paketi Firebase konsolunun Cloud Storage Dosyalar sekmesinde görüntüleyebilirsiniz. Varsayılan paket adı biçiminiz PROJECT_ID.firebasestorage.app
Herkese açık erişimi ayarlama
Cloud Storage for Firebase, verilerinizin nasıl yapılandırılması, nasıl dizine eklenmesi ve ne zaman okunup yazılabileceğini tanımlamanıza olanak tanıyan açıklayıcı bir kural dili sağlar. Varsayılan olarak, Cloud Storage için okuma ve yazma erişimi kısıtlanır. Böylece yalnızca kimliği doğrulanmış kullanıcılar veri okuyabilir veya yazabilir. Authentication ayarlarını yapmadan başlamak için kurallarınızı herkese açık erişim için yapılandırabilirsiniz.
Bu durumda, Cloud Storage uygulamanızı kullanmayan kullanıcılar da dahil olmak üzere herkese açık hale gelir. Bu nedenle, kimlik doğrulamayı ayarlarken Cloud Storage'nizi tekrar kısıtladığınızdan emin olun.
Uygulamanıza Cloud Storage ekleme
Firebase bağımlılarını yüklemek ve yönetmek için Swift Package Manager'ı kullanın.
Firebase SDK'larını Apple projenize eklemenin farklı yolları (ör. doğrudan çerçeveleri içe aktarma ve CocoaPods kullanma) hakkında bilgi edinmek için- Xcode'da, uygulamanız açıkken Dosya > Paket Ekle'ye gidin.
- İstendiğinde Firebase Apple platformları SDK deposunu ekleyin:
- Cloud Storage kitaplığını seçin.
-ObjC
işaretini, hedefinizin derleme ayarlarının Diğer Bağlantı Oluşturucu İşaretleri bölümüne ekleyin.- İşlem tamamlandığında Xcode, arka planda bağımlılarınızı otomatik olarak çözümlemeye ve indirmeye başlar.
https://github.com/firebase/firebase-ios-sdk.git
Uygulamanızda Cloud Storage'ü ayarlama
Herhangi bir Firebase referansı oluşturulmadan veya kullanılmadan önce Firebase'i başlatın.
Daha önce başka bir Firebase ürünü oluşturduysanız bunu yapmış olabilirsiniz ancak
FirebaseStorage
kitaplığını içe aktarma listenize eklediğinizden emin olmanız gerekir.UIApplicationDelegate
'nizeFirebaseCore
modülünü veFirebaseStorage
modülünü içe aktarın.FirebaseAuth
eklemenizi de öneririz.SwiftUI
import SwiftUI import FirebaseCore import FirebaseStorage import FirebaseAuth // ...
Swift
import FirebaseCore import FirebaseStorage import FirebaseAuth // ...
Objective-C
@import FirebaseCore; @import FirebaseStorage; @import FirebaseAuth; // ...
Uygulama temsilcinizin
application(_:didFinishLaunchingWithOptions:)
yöntemindeFirebaseApp
paylaşılan bir örnek yapılandırın: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];
(Yalnızca SwiftUI) Bir uygulama temsilcisi oluşturun ve
UIApplicationDelegateAdaptor
veyaNSApplicationDelegateAdaptor
kullanarakApp
yapınıza ekleyin. Ayrıca uygulama temsilcisi karıştırma işlemini de devre dışı bırakmanız gerekir. Daha fazla bilgi için SwiftUI talimatlarına bakın.SwiftUI
@main struct YourApp: App { // Register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
Varsayılan Firebase uygulamasını kullanarak Cloud Storage hizmetine referans alın.
Uygulamanızın kod tabanında bulunan Firebase yapılandırma dosyasının (
GoogleService-Info.plist
), varsayılan Cloud Storage paketinizin adıyla güncellendiğinden emin olun.Xcode projenizin kök dizinindeki mevcut
GoogleService-Info.plist
dosyasını değiştirmek için indirilen bu yapılandırma dosyasını kullanın. İstenirse yapılandırma dosyasını tüm hedeflere eklemeyi seçin.Uygulamanızda yalnızca en son indirilen yapılandırma dosyasının bulunduğundan ve dosya adına
(2)
gibi ek karakterler eklenmediğinden emin olun.
Varsayılan Firebase uygulamasını kullanarak Cloud Storage hizmetine referans alın:
Swift
let storage = Storage.storage()
// Alternatively, explicitly specify the bucket name URL. storage = Storage.storage(url:"gs://BUCKET_NAME")
Objective-C
FIRStorage *storage = [FIRStorage storage];
// Alternatively, explicitly specify the bucket name URL. // FIRStorage storage = [FIRStorage storageWithURL:@"gs://BUCKET_NAME"];
Cloud Storage'ü kullanmaya hazırsınız.
Sonraki adım? Cloud Storage referansı oluşturmayı öğrenin.
Gelişmiş kurulum
Ek kurulum gerektiren birkaç kullanım alanı vardır:
- Birden fazla coğrafi bölgede Cloud Storage paketleri kullanma
- Farklı depolama sınıflarında Cloud Storage paketleri kullanma
- Aynı uygulamada kimliği doğrulanmış birden fazla kullanıcıyla Cloud Storage paketleri kullanma
Dünyanın dört bir yanında kullanıcılarınız varsa ve verilerini yakınlarında depolamak istiyorsanız ilk kullanım alanı mükemmel bir seçimdir. Örneğin, gecikmeyi azaltmak için ABD, Avrupa ve Asya'da bu bölgelerdeki kullanıcılara ait verileri depolamak üzere paketler oluşturabilirsiniz.
Farklı erişim kalıplarına sahip verileriniz varsa ikinci kullanım alanı faydalıdır. Örneğin: Resimleri veya sık erişilen diğer içerikleri depolayan çok bölgeli ya da bölgesel bir paket ve kullanıcı yedeklerini veya sık erişilmeyen diğer içerikleri depolayan yakın satır veya soğuk satır paketi oluşturabilirsiniz.
Bu kullanım alanlarından herhangi birinde birden fazla Cloud Storage paketi kullanmak isteyebilirsiniz.
Üçüncü kullanım alanı, kullanıcıların birden fazla oturum açmış hesapları (ör. kişisel hesap ve iş hesabı) olmasını sağlayan Google Drive gibi bir uygulama geliştiriyorsanız kullanışlıdır. Her ek hesabın kimliğini doğrulamak için özel bir Firebase uygulaması örneği kullanabilirsiniz.
Birden fazla Cloud Storage paketi kullanma
Yukarıda sağlanan varsayılandan farklı bir Cloud Storage paketi kullanmak veya tek bir uygulamada birden fazla Cloud Storage paketi kullanmak istiyorsanız özel paketinize referans veren bir FIRStorage
örneği oluşturabilirsiniz:
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"];
İçe aktarılan paketlerle çalışma
Mevcut bir Cloud Storage paketini Firebase'e aktarırken Google Cloud SDK'sına dahil olan gsutil
aracını kullanarak Firebase'e bu dosyalara erişme izni vermeniz gerekir:
gsutil -m acl ch -r -u service-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://BUCKET_NAME
Proje numaranızı Firebase projelerine giriş bölümünde açıklandığı şekilde bulabilirsiniz.
Varsayılan erişim denetimi Firebase'e izin verecek şekilde ayarlandığından bu değişiklik, yeni oluşturulan paketleri etkilemez. Bu geçici bir önlemdir ve gelecekte otomatik olarak gerçekleştirilecektir.
Özel Firebase uygulaması kullanma
Özel bir FirebaseApp
kullanarak daha karmaşık bir uygulama geliştiriyorsanız bu uygulamayla başlatılmış bir Storage
örneği oluşturabilirsiniz:
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"];
Sonraki adımlar
Uygulamanızı kullanıma sunmaya hazırlanın:
Depolama alanı gruplarınıza yalnızca uygulamalarınızın erişebilmesi için App Check seçeneğini etkinleştirin.
Google Cloud konsolunda projeniz için bütçe uyarıları ayarlayın.
Projenizin birden fazla Firebase hizmetindeki kullanımına dair genel bir fikir edinmek için Firebase konsolundaki Kullanım ve faturalandırma kontrol panelini izleyin. Daha ayrıntılı kullanım bilgileri için Cloud Storage Kullanım kontrol panelini de ziyaret edebilirsiniz.
Firebase lansman kontrol listesini inceleyin.