[flutter] 플러터에서 Firebase Storage의 파일에 메타데이터를 추가하는 방법

Firebase Storage는 플러터 앱에서 파일을 저장하고 관리하는 데 사용되는 강력한 도구입니다. 이 게시물에서는 Firebase Storage에 파일을 업로드하고 업로드된 파일에 메타데이터를 추가하는 방법에 대해 알아보겠습니다.

Firebase Storage에 파일 업로드하기

먼저, Firebase Storage에 파일을 업로드해야 합니다. 이를 위해서는 Firebase Storage 패키지를 프로젝트에 추가하고 Firebase 프로젝트와 연결해야 합니다.

먼저, pubspec.yaml 파일에 Firebase Storage 패키지를 추가하세요:

dependencies:
  firebase_storage: ^8.0.0

그런 다음, main.dart 파일에서 Firebase와 연결하고 파일을 업로드합니다. 업로드된 파일은 Reference 객체로 반환됩니다.

import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_storage/firebase_storage.dart';

void uploadFile() async {
  await Firebase.initializeApp();
  var storage = FirebaseStorage.instance;
  var ref = storage.ref().child('example.jpg');
  ref.putFile(file);
}

파일 메타데이터 추가하기

이제 Firebase Storage에 업로드된 파일에 메타데이터를 추가할 수 있습니다. 파일에 메타데이터를 추가하려면 SettableMetadata 객체를 사용해야 합니다. 이 객체에 원하는 메타데이터를 설정한 다음 updateMetadata 메서드를 사용하여 파일에 메타데이터를 적용할 수 있습니다.

import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_storage/firebase_storage.dart';

void updateFileMetadata() async {
  await Firebase.initializeApp();
  var storage = FirebaseStorage.instance;
  var ref = storage.ref().child('example.jpg');
  var metadata = SettableMetadata(
    contentType: 'image/jpeg',
    customMetadata: {
      'location': '서울',
      'author': 'user123'
    }
  );
  ref.updateMetadata(metadata);
}

위의 예제에서는 contentType과 사용자 지정 메타데이터를 추가하는 방법을 보여줍니다.

이제 Firebase Storage에 파일을 업로드하고 업로드된 파일에 메타데이터를 추가하는 방법에 대해 알게 되었습니다. 이를 사용하여 플러터 앱에서 파일을 보다 효율적으로 관리할 수 있을 것입니다.

더 자세한 내용은 Firebase Storage 문서를 참조하세요.