よく寝てよく遊びよくサボる

趣味のAndroidアプリ開発の話や、その他諸々の情報について掲載していきます。自らの備忘の面が強いので情報の正確性は保証できませんが、誰かの役に立てば是幸い。(リンクはご自由に!)

改めて簡単な画面更新を検討

○データベースからテーブルを取得してリスト表示する
○他の画面でデータを更新してリスト画面に戻ってきた時には、リストを最新化する
ということを、元々は、FutureBuilderとStreamBuilderを組み合わせてなんとか実現していたのですが、もう少し簡単に出来そうなことがわかってきました。

 

データベースから読み込んだ値を利用するときはFutureBuilderを使うのがわかりやすいですが、他の画面から戻ってきた時には、その戻ってきたタイミングでsetState()してデータを更新するのが、構成としては簡単!

 

こちらを参考にしました。

teratail.com

 

qiita.com

そうだったListView

少し開発から離れているうちに前回苦戦したことを忘れていた。。

ListViewは無制限の高さ領域を必要としているので、Columnとかで縦サイズを制限して使いたい場合には一工夫必要なのでした。

rayt-log.com

 

blog.dalt.me

google_mobile_adsへの変更

flutterでのadmob利用がgoogle_mobile_adsを利用するように変わったので、遅ればせながら対応を開始。

 

途中色々エラーが出ましたが、こちらのサイトを参考にさせていただいて解消できました。

zw-kakeru.com

 

世の中はオリンピックの終盤戦ですね。

かくいう私もテレビで色々な競技を見ていて、もっとまだ見ぬ世界に挑戦してみたいな、と思ったりしています。

AndroidStudioの再インストール

前から少し調子が悪くて騙し騙し使っていたAndroidStudioが、更新時にいよいよ起動しなくなったので、完全アンインストールのうえでの再インストール。

 

Macではアプリケーションをゴミ箱に捨てるだけでアンインストールできるはずのところ、うまくいかなかったので、下記サイトを参考に、Macから完全アンインストールして、再度インストールしたところうまく行きました。

qiita.com

macをBig Surへ更新したらFlutterが動かなくなった

Big Sur × カスペルスキーインターネットセキュリティ × Flutterの組み合わせが駄目っぽい。

 

ここの記事に出ているように、Bad state: Future already completedが出力されて、エミュレーターが起動しないし、flutter doctorとかもエラーになるし、何もできなくなってしまった。

Flutterをインストールし直したりしてみたけど、効果なし。

github.com

 

FlutterじゃなくてJavaで書いているAndroidアプリではエミュレーターを起動できたので、Flutterに限った組み合わせの問題の模様・・・。

とりあえず、エミュレーターの起動時や、ビルドする時にカスペルスキーを終了すれば動作しそうだけど、毎回こんなことをやるわけにはいかないので、早くなんとかしてほしい・・・。(カスペルスキーは「保護機能を無効にする」では効果がなくて、「終了」しないと駄目でした。。)