Я пытаюсь подключить Firebase Storage к своему проекту Flutter. Но я получил ошибку
[ОШИБКА:flutter/runtime/dart_vm_initializer.cc(41)] Необработанная
Исключение: [firebase_storage/channel-error ] Невозможно установить
соединение на канале.
Я обнаружил, что это может быть проблема с правилами, поскольку я использовал аутентификацию Firebase. Но мои правила в хранилище выглядят так:
rules_version = '2';
service firebase.storage {
match /b/{bucket}/o {
match /{allPaths=**} {
allow read, write : if request.auth !=null;
}
}
}
Я тоже пробовал:
allow read, write : if true
но у него та же проблема
Я изменил свой build.gradle, добавив зависимости
implementation("com.google.firebase:firebase-storage:21.0.0")
Мой код:
Reference get firebaseStorage => FirebaseStorage.instance.ref();
class FirebaseStorageService extends GetxService{
static Future getImage(String? imgName) async{
if(imgName == null){
return null;
}
try{
var urlRef = firebaseStorage
.child("images")
.child('$imgName.png');
var imgUrl = await urlRef.getDownloadURL(); //here is a problem
return imgUrl;
}catch (e){
throw e;
return null;
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/784 ... on-channel