surga Lab

個人開発ログ

競馬収支管理アプリ HistBet をFlutterで作ってストアリリースまでしたので、使った技術を紹介する

iOS/Androidアプリ「HistBet」をリリースしました競馬の収支を "見やすく" 管理できます!月間成績やグラフで振り返ることもできるので、競馬が好きな方はぜひともインストールしてみてください✨https://t.co/2BvXRWdVD5https://t.co/OIuFtrmSC4 pic.twitter…

Flutter elevationプロパティとは

ほとんどのWidgetに用意されているelevationプロパティですが、これはz軸方向への階層を表しています。 floatingActionButton: FloatingActionButton( elevation: 2, onPressed: _incrementCounter, tooltip: 'Increment', child: Icon(Icons.add), ), 「マ…

Flutter Firestoreで複数ドキュメントに渡るTransactionを張る方法

Firestoreのトランザクションを複数のドキュメントに張る方法です。 1つのドキュメントを読み取り、その後同じドキュメントで書くような場合は単純です。(例えばインクリメント) トランザクション内でgetした後にupdateもしくはsetすればいいだけですね。 fi…

Flutter AndroidとiOSでFirestoreトランザクションの挙動が異なる

FlutterでFirestoreトランザクションを試していた時にハマった話です。 現象 AndroidとiOSでFirestoreトランザクションの挙動が異なる Android : トランザクションに失敗しているのに成功として処理される Android : トランザクション中でthrowするとエラー…

Flutter Firestoreで分散カウンタを実装する

分散カウンタを簡単なカウントアップアプリで試してみます。 分散カウンタ 多くのアプリでは、いいね数やフォロワー数のためにカウントアップが必要です。 しかしFirestoreでは、制限上1つのドキュメントにつき1秒に1回しか更新することができません。 そこ…

Flutter Firestoreのサンプルを動かしてみる

FlutterでFirestoreを扱ってみます。 Firebaseの導入 まずはFlutterのプロジェクトにFirebaseを対応させます。 対応手順はこれ以上ないくらい公式に記載されていますので、割愛します。 ステップ4まで進めましょう。 firebase.google.com Firestoreの導入 pu…

Flutter cloud_firestoreプラグインを入れると64kエラーになる時の解決策

cloud_firestoreを試そうとサンプルを実行していたところ、以下の問題にぶつかりました。 現象 cloud_firestoreプラグイン導入後、ビルドが通りませんでした。 環境 Flutter/Android firebase_core: ^0.4.0 cloud_firestore: ^0.12.5+2 エラーメッセージ D8:…

Flutter 画像ロード時にプレースホルダーを表示する

Flutterアプリで画像を表示する際にロード画面を表示する方法です。 画像の表示 with ロード画面 Flutterアプリで画像を表示する方法は以前のブログで紹介しましたが、 インターネットの画像を表示する場合、少なからずダウンロードの時間が発生します。 ユ…

Flutter URL指定で画像を表示する

Flutterアプリでインターネット上の画像を表示する方法です。 画像の表示 インターネットから取ってきた画像を表示するシチュエーションはよくありますが、Flutterなら簡単に対応することができます。 使う画像はもちろんいらすとやです。 URLの指定 Image.n…