Firebase 저장소에 이미지 업로드 - Flutter(Android 및 Ios)

How to upload images to Firebase storage in Flutter

갤러리에서 이미지를 선택하거나 카메라에서 이미지를 캡처하여 Firebase에 업로드할 수 있습니다.



시작하자

1단계: Flutter 애플리케이션 만들기

2단계: Firebase 애플리케이션 구성

게시물 확인 방법configure Flutter application with Firebase

3단계: pubspec.yaml 파일에 필수 종속성 추가

dependencies:
  firebase_storage: ^3.0.8
  firebase_core: ^0.4.0+9
  firebase_analytics: ^5.0.6
  image_picker:


4단계:

읽기Flutter How to pick Image from Camera or Gallery


final picker = ImagePicker();

  Future pickImage() async {
    final pickedFile = await picker.getImage(source: ImageSource.camera);

    setState(() {
      _imageFile = File(pickedFile.path);
    });
  }


5단계: FirebaseStorage에 이미지 업로드

ImagePicker를 사용하여 이미지를 선택하면 화면에 표시됩니다. 화면에서 '이미지 업로드' 버튼을 클릭하면 이미지가 Firebase 저장소에 업로드됩니다. FirebaseStorage 쓰기 규칙이 적절하게 구성되었는지 확인하세요. allow write: if true;를 사용하여 FirebaseStorage 액세스에 대한 쓰기 액세스를 일시적으로 활성화하고 있습니다. 기능을 확인한 후 비활성화하십시오.

다음 코드는 기기에서 이미지 파일을 가져와 FirebaseStorage의 업로드 폴더에 업로드합니다.

File _imageFile;


  Future uploadImageToFirebase(BuildContext context) async {
    String fileName = basename(_imageFile.path);
    StorageReference firebaseStorageRef =
        FirebaseStorage.instance.ref().child('uploads/$fileName');
    StorageUploadTask uploadTask = firebaseStorageRef.putFile(_imageFile);
    StorageTaskSnapshot taskSnapshot = await uploadTask.onComplete;
    taskSnapshot.ref.getDownloadURL().then(
          (value) => print("Done: $value"),
        );
  }


iOS 구성

iOS Info.list에 권한 추가

<key>NSCameraUsageDescription</key>
<string>Need to access your camera to capture a photo add and update profile picture.</string>

<key>NSPhotoLibraryUsageDescription</key>
<string>Need to access your photo library to select a photo add and update profile picture</string>


다운로드Flutter Upload Image to Firebase

좋은 웹페이지 즐겨찾기