画像を選択してアップロードする機能を付けたい。
アップロード先はFirebase Storageで。
Flutter×Firebase(CloudStorage)でファイルダウンロードとアップロードを簡単に実現する方法 - Qiita
を見て実装してみたところ、Unsupported operation: Platform._operatingSystemなエラーが。
Webだと対応していない書き方なのかな・・環境ごとに分けるの面倒だな・・
google cloud functions - Flutter web - Upload Image File to Firebase Storage - Stack Overflow
を見て再チャレンジして、何とかアップロードできた。
dart:ioではなくdart:htmlを使い、putFileを使わずにputDataを使うように変えた。
あとFirebase Storageのデフォルト設定が書き込み禁止なので、allow read, write: if request.auth != null;として書き込めるように変更した。
何日もハマらずに済んでよかった。