Cloud Storage for Firebase sayesinde görüntü ve video gibi kullanıcı tarafından oluşturulan içerikleri yükleyip paylaşabilirsiniz. Böylece, uygulamalarınızda rich media içeriği oluşturabilirsiniz. Verileriniz, yüksek kullanılabilirlik ve küresel yedekleme imkanı sunan eksabayt ölçekli nesne depolama çözümü 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üklemenizi sağlayarak sorunlu ağları kolayca yönetmenizi sağlar.
Başlamadan önce
Cloud Storage'ı kullanabilmek için şunları yapmanız gerekir:
C++ projenizi kaydedin ve Firebase'i kullanacak şekilde yapılandırın.
C++ projeniz zaten Firebase'i kullanıyorsa Firebase için kaydedilmiş ve yapılandırılmış demektir.
Firebase C++ SDK'sını C++ projenize ekleyin.
Firebase'i C++ projenize eklemenin hem Firebase konsolundaki hem de açık C++ projenizdeki görevleri gerektirdiğini unutmayın (örneğin, Firebase yapılandırma dosyalarını konsoldan indirip C++ projenize taşırsınız).
Varsayılan Cloud Storage paketi oluşturma
Firebase konsolunun gezinme bölmesinden Depolama'yı seçin ve ardından Başlayın'ı tıklayın.
Güvenlik kurallarını kullanarak Cloud Storage verilerinizin güvenliğini sağlamayla ilgili mesajları inceleyin. Geliştirme sırasında herkese açık erişim kurallarınızı oluşturmayı düşünün.
Varsayılan Cloud Storage paketiniz için bir konum seçin.
Bu konum ayarı, projenizin varsayılan Google Cloud Platform (GCP) kaynak konumudur. Bu konumun, projenizde konum ayarı gerektiren GCP hizmetleri, özellikle de Cloud Firestore veritabanınız ve App Engine uygulamanız (Cloud Scheduler kullanıyorsanız gereklidir) için kullanılacağını unutmayın.
Konum seçemiyorsanız projenizin zaten varsayılan bir GCP kaynak konumu vardır. Bu değer, proje oluşturma sırasında veya konum ayarı gerektiren başka bir hizmet kurulurken ayarlanmıştır.
Blaze planını kullanıyorsanız her biri kendi konumuna sahip birden fazla paket oluşturabilirsiniz.
Done'ı (Bitti) tıklayın.
Herkese açık erişimi ayarlama
Cloud Storage for Firebase, verilerinizin nasıl yapılandırılacağını, nasıl dizine eklenmesi gerektiğini ve verilerinizin ne zaman okunup yazılabileceğini tanımlamanıza olanak tanıyan bildirim temelli bir kural dili sağlar. Varsayılan olarak Cloud Storage'a okuma ve yazma erişimi kısıtlıdır. Böylece yalnızca kimliği doğrulanmış kullanıcılar veri okuyabilir veya yazabilir. Kimlik Doğrulama'yı ayarlamadan başlamak için kurallarınızı herkese açık erişim için yapılandırabilirsiniz.
Bu işlem, Cloud Storage'ı uygulamanızı kullanmayan kişiler dahil olmak üzere herkese açık hale getirir. Bu nedenle, kimlik doğrulamayı ayarlarken Cloud Storage'ınızı tekrar kısıtlamayı unutmayın.
firebase::App
uygulamasını oluşturun ve başlatın
Cloud Storage'a erişebilmeniz için önce firebase::App
oluşturup başlatmanız gerekir.
firebase::App
için başlık dosyasını dahil edin:
#include "firebase/app.h"
Android
JNI ortamını ve Java Etkinliği için jobject
referansını bağımsız değişken olarak ileterek firebase::App
oluşturun:
app = App::Create(AppOptions(), jni_env, activity);
iOS ve üzeri
firebase::App
öğesini oluşturun:
app = App::Create(AppOptions());
firebase::storage::Storage
sınıfına erişme
firebase::storage::Storage
sınıfı, Cloud Storage C++ SDK'sının giriş noktasıdır.
Storage* storage = Storage::GetInstance(app);
Cloud Storage'ı kullanmaya hazırsınız.
Öncelikle Cloud Storage referansının nasıl oluşturulacağını öğrenelim.
Gelişmiş kurulum
Ek kurulum gerektiren birkaç kullanım alanı vardır:
- Cloud Storage paketlerini birden fazla coğrafi bölgede kullanma
- Cloud Storage paketlerini farklı depolama sınıflarında kullanma
- Aynı uygulamada kimliği doğrulanmış birden fazla kullanıcıyla Cloud Storage paketlerini 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ı idealdir. Örneğin ABD, Avrupa ve Asya'da bulunan paketler oluşturarak gecikmeyi azaltmak için bu bölgelerdeki kullanıcıların verilerini depolayabilirsiniz.
İkinci kullanım alanı, farklı erişim kalıplarına sahip verileriniz varsa yararlı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 nadiren erişilen diğer içerikleri depolayan bir Nearline veya Coldline paketi oluşturabilirsiniz.
Bu kullanım alanlarından birinde birden fazla Cloud Storage paketi kullanmanız gerekir.
Üçüncü kullanım alanı, kullanıcıların giriş yapmış birden fazla hesaba (örneğin, kişisel bir hesap ve bir iş hesabı) sahip olmasına olanak tanıyan Google Drive gibi bir uygulama geliştiriyorsanız yararlı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ılan sürümden farklı bir Cloud Storage paketi kullanmak veya tek bir uygulamada birden çok Cloud Storage paketi kullanmak istiyorsanız özel paketinize referans veren bir firebase::storage::Storage
örneği oluşturabilirsiniz:
// Get a non-default Cloud Storage bucket Storage* storage = Storage::GetInstance("gs://my-custom-bucket");
İçe aktarılan paketlerle çalışma
Mevcut bir Cloud Storage paketini Firebase'e aktarırken Firebase'e, Google Cloud SDK'da bulunan gsutil
aracını kullanarak bu dosyalara erişim izni vermeniz gerekir:
gsutil -m acl ch -r -u service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://<your-cloud-storage-bucket>
Proje numaranızı Firebase projelerine giriş bölümünde açıklandığı şekilde bulabilirsiniz.
Bu durum, yeni oluşturulan paketleri etkilemez. Çünkü bu gruplar, varsayılan erişim denetimi Firebase'e izin verecek şekilde ayarlanır. Bu geçici bir çözümdür ve gelecekte otomatik olarak yapılacaktır.
Özel bir Firebase uygulaması kullanın
Özel bir firebase::App
kullanarak daha karmaşık bir uygulama oluşturuyorsanız söz konusu uygulamayla başlatılmış bir firebase::storage::Storage
örneği oluşturabilirsiniz:
// 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");
Sonraki adımlar
Uygulamanızı kullanıma sunmaya hazırlanma:
- Google Cloud Console'da projeniz için bütçe uyarıları oluşturun.
- Birden çok Firebase hizmeti genelinde projenizin kullanımıyla ilgili 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.