firebase_storage/channel-error 无法在通道上建立连接

问题描述 投票:0回答:1

我正在尝试将 Firebase Storage 连接到我的 flutter 项目。但我遇到了一个错误

[错误:flutter/runtime/dart_vm_initializer.cc(41)] 未处理 异常:[firebase_storage/channel-error] 无法建立 通道上的连接。

我发现这可能是规则问题,因为我使用了 firebase auth。但我的存储规则如下:

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<String?> 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;
    }
  }
}
android flutter firebase dart firebase-storage
1个回答
-1
投票

一般小艾都会给我们这样的答案

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(MyApp());
}

但是我必须提供更多连接信息,这是我的代码

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  if(Platform.isAndroid) {
    await Firebase.initializeApp(
        options: FirebaseOptions(
            apiKey: 'AIzaSyB9m84p8Y_SY6isFvMaOFWOA2g4xKrb6Nc',
            appId: '1:773723122783:android:b26d30ed175962b3413fea',
            messagingSenderId: '773723122783',
            projectId: 'untitled-38d04')
    );
  }
  Get.put(auth());
  runApp(const MyApp());
}

检查它们并将其放入主屏幕希望它会有所帮助

© www.soinside.com 2019 - 2024. All rights reserved.