Bắt đầu với Cloud Storage trên nền tảng Apple

Cloud Storage cho Firebase cho phép bạn tải lên và chia sẻ nội dung do người dùng tạo, chẳng hạn như hình ảnh và video, cho phép bạn xây dựng nội dung đa phương tiện vào ứng dụng của mình. Dữ liệu của bạn được lưu trữ trong nhóm Google Cloud Storage — một giải pháp lưu trữ đối tượng có quy mô exabyte với tính sẵn sàng cao và dự phòng toàn cầu. Cloud Storage cho Firebase cho phép bạn tải các tệp này lên một cách an toàn trực tiếp từ thiết bị di động và trình duyệt web, xử lý các mạng không ổn định một cách dễ dàng.

Điều kiện tiên quyết

  1. Cài đặt SDK Firebase .
  2. Thêm ứng dụng của bạn vào dự án Firebase trong bảng điều khiển Firebase .

Tạo nhóm lưu trữ đám mây mặc định

  1. Từ ngăn điều hướng của bảng điều khiển Firebase , chọn Bộ nhớ , sau đó nhấp vào Bắt đầu .

  2. Xem lại thông báo về việc bảo mật dữ liệu Cloud Storage của bạn bằng các quy tắc bảo mật. Trong quá trình phát triển, hãy cân nhắc việc thiết lập các quy tắc của bạn để truy cập công khai .

  3. Chọn vị trí cho nhóm Cloud Storage mặc định của bạn.

    • Cài đặt vị trí này là vị trí tài nguyên Google Cloud Platform (GCP) mặc định của dự án của bạn. Lưu ý rằng vị trí này sẽ được sử dụng cho các dịch vụ GCP trong dự án của bạn yêu cầu cài đặt vị trí, cụ thể là cơ sở dữ liệu Cloud Firestore và ứng dụng App Engine của bạn (bắt buộc nếu bạn sử dụng Trình lập lịch biểu đám mây).

    • Nếu bạn không thể chọn vị trí thì dự án của bạn đã có vị trí tài nguyên GCP mặc định. Nó được đặt trong quá trình tạo dự án hoặc khi thiết lập một dịch vụ khác yêu cầu cài đặt vị trí.

    Nếu bạn đang sử dụng gói Blaze, bạn có thể tạo nhiều nhóm , mỗi nhóm có vị trí riêng.

  4. Nhấp vào Xong .

Thiết lập quyền truy cập công cộng

Cloud Storage cho Firebase cung cấp ngôn ngữ quy tắc khai báo cho phép bạn xác định cách cấu trúc dữ liệu, cách lập chỉ mục dữ liệu và thời điểm dữ liệu của bạn có thể được đọc và ghi vào. Theo mặc định, quyền truy cập đọc và ghi vào Cloud Storage bị hạn chế nên chỉ những người dùng được xác thực mới có thể đọc hoặc ghi dữ liệu. Để bắt đầu mà không cần thiết lập Xác thực , bạn có thể định cấu hình các quy tắc của mình để truy cập công khai .

Điều này làm cho Cloud Storage mở cho bất kỳ ai, ngay cả những người không sử dụng ứng dụng của bạn, vì vậy hãy nhớ hạn chế lại Cloud Storage khi bạn thiết lập xác thực.

Thêm Cloud Storage vào ứng dụng của bạn

Sử dụng Trình quản lý gói Swift để cài đặt và quản lý các phần phụ thuộc của Firebase.

  1. Trong Xcode, khi dự án ứng dụng của bạn đang mở, hãy điều hướng đến File > Add Packages .
  2. Khi được nhắc, hãy thêm kho lưu trữ SDK nền tảng Firebase của Apple:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. Chọn thư viện Lưu trữ đám mây.
  5. Thêm cờ -ObjC vào phần Cờ liên kết khác trong cài đặt bản dựng của mục tiêu của bạn.
  6. Khi hoàn tất, Xcode sẽ tự động bắt đầu phân giải và tải xuống các phần phụ thuộc của bạn ở chế độ nền.

Thiết lập bộ nhớ đám mây

Bạn phải khởi tạo Firebase trước khi tạo hoặc sử dụng bất kỳ tham chiếu Firebase nào. Nếu bạn đã thực hiện việc này cho một tính năng khác của Firebase, bạn có thể bỏ qua bước này.

  1. Nhập mô-đun FirebaseCore trong UIApplicationDelegate của bạn, cũng như bất kỳ mô-đun Firebase nào khác mà ủy quyền ứng dụng của bạn sử dụng. Ví dụ: để sử dụng Cloud Firestore và Xác thực:

    SwiftUI

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

    Nhanh

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Mục tiêu-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. Định cấu hình phiên bản chia sẻ FirebaseApp trong phương thức application(_:didFinishLaunchingWithOptions:) của đại biểu ứng dụng của bạn:

    SwiftUI

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

    Nhanh

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

    Mục tiêu-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. Nếu bạn đang sử dụng SwiftUI, bạn phải tạo một đại biểu ứng dụng và đính kèm nó vào cấu trúc App của mình thông qua UIApplicationDelegateAdaptor hoặc NSApplicationDelegateAdaptor . Bạn cũng phải tắt tính năng chuyển giao ứng dụng. Để biết thêm thông tin, hãy xem hướng dẫn SwiftUI .

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. Nhận tài liệu tham khảo về dịch vụ Cloud Storage bằng Ứng dụng Firebase mặc định:

    Nhanh

    let storage = Storage.storage()
    

    Mục tiêu-C

    FIRStorage *storage = [FIRStorage storage];
    

Bạn đã sẵn sàng bắt đầu sử dụng Cloud Storage!

Trước tiên, hãy tìm hiểu cách tạo tài liệu tham khảo Cloud Storage .

Thiết lập nâng cao

Có một số trường hợp sử dụng yêu cầu thiết lập bổ sung:

Trường hợp sử dụng đầu tiên là hoàn hảo nếu bạn có người dùng trên toàn thế giới và muốn lưu trữ dữ liệu của họ ở gần họ. Ví dụ: bạn có thể tạo các nhóm ở Hoa Kỳ, Châu Âu và Châu Á để lưu trữ dữ liệu cho người dùng ở những khu vực đó nhằm giảm độ trễ.

Trường hợp sử dụng thứ hai sẽ hữu ích nếu bạn có dữ liệu với các kiểu truy cập khác nhau. Ví dụ: bạn có thể thiết lập một nhóm đa khu vực hoặc khu vực để lưu trữ hình ảnh hoặc nội dung được truy cập thường xuyên khác và một nhóm gần tuyến hoặc đường dây lạnh để lưu trữ các bản sao lưu của người dùng hoặc nội dung được truy cập không thường xuyên khác.

Trong một trong các trường hợp sử dụng này, bạn sẽ muốn sử dụng nhiều nhóm Lưu trữ đám mây .

Trường hợp sử dụng thứ ba sẽ hữu ích nếu bạn đang xây dựng một ứng dụng, chẳng hạn như Google Drive, cho phép người dùng có nhiều tài khoản đăng nhập (ví dụ: tài khoản cá nhân và tài khoản công việc). Bạn có thể sử dụng phiên bản Ứng dụng Firebase tùy chỉnh để xác thực từng tài khoản bổ sung.

Sử dụng nhiều nhóm lưu trữ đám mây

Nếu muốn sử dụng nhóm Cloud Storage khác với nhóm mặc định được cung cấp ở trên hoặc sử dụng nhiều nhóm Cloud Storage trong một ứng dụng, bạn có thể tạo một phiên bản FIRStorage tham chiếu nhóm tùy chỉnh của mình:

Nhanh

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

Mục tiêu-C

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

Làm việc với các nhóm đã nhập

Khi nhập nhóm Cloud Storage hiện có vào Firebase, bạn sẽ phải cấp cho Firebase khả năng truy cập các tệp này bằng công cụ gsutil , có trong Google Cloud SDK :

gsutil -m acl ch -r -u service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://<your-cloud-storage-bucket>

Bạn có thể tìm thấy số dự án của mình như được mô tả trong phần giới thiệu về dự án Firebase .

Điều này không ảnh hưởng đến các nhóm mới được tạo vì những nhóm này có bộ kiểm soát truy cập mặc định để cho phép Firebase. Đây là biện pháp tạm thời và sẽ được thực hiện tự động trong tương lai.

Sử dụng ứng dụng Firebase tùy chỉnh

Nếu bạn đang xây dựng một ứng dụng phức tạp hơn bằng cách sử dụng FirebaseApp tùy chỉnh, bạn có thể tạo một phiên bản Storage được khởi tạo với ứng dụng đó:

Nhanh

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

Mục tiêu-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"];
    

Bước tiếp theo