Apple platformlarında Cloud Storage'ı kullanmaya başlayın

Firebase için Cloud Storage, görseller ve videolar gibi kullanıcı tarafından oluşturulan içerikleri yüklemenize ve paylaşmanıza olanak tanıyarak uygulamalarınıza zengin medya içeriği oluşturmanıza olanak tanır. Verileriniz, yüksek kullanılabilirliğe ve küresel yedekliliğe sahip, eksabayt ölçekli bir nesne depolama çözümü olan Google Cloud Storage paketinde depolanır. Firebase için Cloud Storage, bu dosyaları doğrudan mobil cihazlardan ve web tarayıcılarından güvenli bir şekilde yüklemenize olanak tanıyarak dağınık ağları kolaylıkla yönetir.

Önkoşullar

  1. Firebase SDK'sını yükleyin .
  2. Uygulamanızı Firebase konsolundaki Firebase projenize ekleyin.

Varsayılan bir Cloud Storage paketi oluşturun

  1. Firebase konsolunun gezinme bölmesinden Depolama'yı seçin ve ardından Başlayın'ı tıklayın.

  2. Güvenlik kurallarını kullanarak Cloud Storage verilerinizin güvenliğini sağlamaya ilişkin mesajları inceleyin. Geliştirme sırasında, genel erişim için kurallarınızı oluşturmayı düşünün.

  3. Varsayılan Cloud Storage grubunuz için bir konum seçin.

    • Bu konum ayarı, projenizin varsayılan Google Cloud Platform (GCP) kaynak konumudur . Bu konumun, projenizde, özellikle Cloud Firestore veritabanınız ve App Engine uygulamanız (Cloud Scheduler kullanıyorsanız gereklidir) konum ayarı gerektiren GCP hizmetleri için kullanılacağını unutmayın.

    • Bir konum seçemiyorsanız projenizde zaten varsayılan bir GCP kaynak konumu vardır. Proje oluşturma sırasında veya konum ayarı gerektiren başka bir hizmetin kurulumu sırasında ayarlandı.

    Blaze planını kullanıyorsanız her biri kendi konumuna sahip birden fazla paket oluşturabilirsiniz .

  4. Bitti'yi tıklayın.

Genel erişimi ayarlayın

Firebase için Cloud Storage, verilerinizin nasıl yapılandırılması gerektiğini, 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ıtlanmıştır, böylece yalnızca kimliği doğrulanmış kullanıcılar veri okuyabilir veya yazabilir. Kimlik Doğrulamayı ayarlamadan başlamak için kurallarınızı genel erişime yönelik olarak yapılandırabilirsiniz .

Bu, Cloud Storage'ı herkese, hatta uygulamanızı kullanmayan kişilere bile açık hale getirir; bu nedenle, kimlik doğrulamayı ayarlarken Cloud Storage'ınızı tekrar kısıtladığınızdan emin olun.

Uygulamanıza Cloud Storage ekleyin

Firebase bağımlılıklarını yüklemek ve yönetmek için Swift Paket Yöneticisini kullanın.

  1. Xcode'da uygulama projeniz açıkken Dosya > Paket Ekle'ye gidin.
  2. İstendiğinde Firebase Apple platformları SDK deposunu ekleyin:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. Bulut Depolama kitaplığını seçin.
  5. -ObjC bayrağını hedefinizin derleme ayarlarının Diğer Bağlayıcı Bayrakları bölümüne ekleyin.
  6. Bitirdiğinizde Xcode, bağımlılıklarınızı arka planda otomatik olarak çözmeye ve indirmeye başlayacaktır.

Cloud Storage'ı kurun

Herhangi bir Firebase referansı oluşturulmadan veya kullanılmadan önce Firebase'i başlatmalısınız. Bunu zaten başka bir Firebase özelliği için yaptıysanız bu adımı atlayabilirsiniz.

  1. FirebaseCore modülünü UIApplicationDelegate ve uygulama temsilcinizin kullandığı diğer Firebase modüllerine aktarın. Örneğin, Cloud Firestore ve Authentication'ı kullanmak için:

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Süratli

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Amaç-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. Uygulama temsilcinizin application(_:didFinishLaunchingWithOptions:) yönteminde FirebaseApp paylaşılan örneğini yapılandırın:

    SwiftUI

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Süratli

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Amaç-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. SwiftUI kullanıyorsanız, bir uygulama temsilcisi oluşturmalı ve bunu UIApplicationDelegateAdaptor veya NSApplicationDelegateAdaptor aracılığıyla App yapınıza eklemelisiniz. Ayrıca uygulama temsilcisinin swizzling özelliğini de devre dışı bırakmalısınız. 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()
          }
        }
      }
    }
          
  4. Varsayılan Firebase Uygulamasını kullanarak Cloud Storage hizmetine referans alın:

    Süratli

    let storage = Storage.storage()
    

    Amaç-C

    FIRStorage *storage = [FIRStorage storage];
    

Cloud Storage'ı kullanmaya başlamaya 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 durumu vardır:

Dünyanın her yerinde kullanıcılarınız varsa ve verilerini onların yakınında depolamak istiyorsanız ilk kullanım durumu mükemmeldir. Örneğin, gecikmeyi azaltmak amacıyla ABD, Avrupa ve Asya'da bu bölgelerdeki kullanıcılar için veri depolamak amacıyla paketler oluşturabilirsiniz.

Farklı erişim modellerine sahip verileriniz varsa ikinci kullanım durumu faydalıdır. Örneğin: resimleri veya diğer sık ​​erişilen içeriği depolayan çok bölgeli veya bölgesel bir grup ve kullanıcı yedeklerini veya diğer sık ​​erişilen içeriği depolayan bir yakın hat veya soğuk hat grubu oluşturabilirsiniz.

Bu kullanım durumlarının herhangi birinde birden fazla Cloud Storage paketi kullanmak isteyeceksiniz.

Üçüncü kullanım durumu, kullanıcıların birden fazla oturum açmış hesaba (örneğin, kişisel hesap ve iş hesabı) sahip olmasına olanak tanıyan 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 kullanın

Yukarıda belirtilen varsayılanın dışında 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:

Süratli

// Get a non-default Cloud Storage bucket
storage = Storage.storage(url:"gs://my-custom-bucket")
    

Amaç-C

// Get a non-default Cloud Storage bucket
FIRStorage storage = [FIRStorage storageWithURL:@"gs://my-custom-bucket"];
    

İçe aktarılan kovalarla çalışma

Mevcut bir Cloud Storage paketini Firebase'e aktarırken, Google Cloud SDK'da bulunan gsutil aracını kullanarak Firebase'e bu dosyalara erişme olanağı 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, yeni oluşturulan paketleri etkilemez çünkü bunların varsayılan erişim kontrolü Firebase'e izin verecek şekilde ayarlanmıştır. Bu geçici bir önlemdir ve gelecekte otomatik olarak gerçekleştirilecektir.

Özel bir Firebase Uygulaması kullanın

Özel bir FirebaseApp kullanarak daha karmaşık bir uygulama oluşturuyorsanız, bu uygulamayla başlatılan bir Storage örneği oluşturabilirsiniz:

Süratli

// 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")
    

Amaç-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