在我的 flutter 应用程序中,当我在 IOS 模拟器上将图像发送到 firebase 时,收到一条错误:“‘plugins.flutter.io/firebase_storage’通道在非平台线程上从本机向 Flutter 发送了一条消息。平台通道消息必须在平台线程上发送。否则可能会导致数据丢失或崩溃,并且必须在创建该通道的插件或应用程序代码中进行修复。”但我在 Android 模拟器中没有收到该错误。我通知了我的同事,所以我们再次尝试在 M2 Macbook Air 的 IOS 模拟器上执行这个应用程序,它成功了。但我的 M1 Macbook Air 总是出现这个错误。
我尝试了 flutter clean flutter 运行但没有成功。
更新 Flutter 后,当我从 iOS 模拟器(M1 Macbook Pro)上传文件到 Firebase Storage 时,遇到了同样的错误:firebase_storage 表示问题是在非平台线程中从本机发送到 Flutter 的消息。上面说要参考文档https://docs.flutter.dev/platform-integration/platform-channels#architecture,所以我读了它,但是Flutter应用程序中没有什么特别要做的,而且看起来像插件需要修改。
我尝试了几件事, 重新启动 iOS 模拟器后,我收到了平台通道错误消息,但文件正常存储,其余代码工作正常。哈哈