くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

Flutter

Flutterで文字の上下にある余白をなくす(textHeightBehavior)

ほそぼそと作ってるFlutter製スマホゲームで、 正方形のWidgetの中に文字を中央に表示したいなと思い、 いろいろ調べたときの備忘録(*´ω`*) Textウィジェットの構造 Textが確保している領域の話などは、このスライドがわかりやすい Textの構造を理解する/Un…

Flutter x iOSでリリース&AppleID認証のための証明書を用意する

FlutterをiOSでリリースする場合とかに署名用の証明書が必要。 いつも調べてるので、まとめてみたときの備忘録(´ω`) 開発/リリース向け 開発やリリースのために、証明書などがいろいろ必要 Apple Developerコンソールでポチポチする感じ 証明書署名リクエス…

satoriでTwemoji(Twitter絵文字)も含めて画像化する

ほそぼそと作ってるゲームアプリで、 絵文字に対応したときの備忘録(*´ω`*) アップデートDONE1. 絵文字でステージを作成できるようになりました✨2. ランキング数を10から30に変更しました✨ほか、いくつかの改善や修正も#マグロ探し #indiedev #ゲーム開発 #…

FlutterでTwemoji(Twitter絵文字)をつかう

ほそぼそと作ってるゲームアプリで、 絵文字に対応したときの備忘録(*´ω`*) アップデートDONE1. 絵文字でステージを作成できるようになりました✨2. ランキング数を10から30に変更しました✨ほか、いくつかの改善や修正も#マグロ探し #indiedev #ゲーム開発 #…

Flutter x Androidでリリース&Google認証のために証明書を用意する

FlutterをAndroidでリリースする場合とかに署名用の証明書が必要。 いつも調べてるので、まとめてみたときの備忘録(*´ω`*) 公式だとこの辺り Sign the app | Android | Flutter リリース用の証明書作成と署名 keystoreの作成 まずは署名するためのkeystore(…

Flutter x Firebase Remote Configで強制アップデート

Firebaseコンソールで設定した値を、 Flutterアプリから取得できるRemote Config Remote Configとpackage_info_plusをつかって、 強制アップデート機能を実装したときの備忘録(*´ω`*) 状態管理には、riverpodを利用してる ざっくりとした流れ 流れとしては…

Android-RateをFlutter/Dartで実装する

昔使ってて好きだったレビュー依頼用のライブラリのAndroid-Rate。 Flutterでも使いたいなと思い、リライトしてみたときの備忘録(*´ω`*) hotchemi/Android-Rate at 1.0.1 Android-Rateとは レビューを依頼するダイアログを表示する便利ライブラリ。 インス…

go_router v13.0.0以降でダイアログがpopできない

Flutterで開発をしているアプリで、 go_routerをv12系からv13系にしたらpopできなくなった。。 このあたりをみてみると、 flutter - context.pop() dialogs after migrating to go_router 13.2.3 from <13 - Stack Overflow Package: Go-router - Unexpected…

FlutterでDeepLinkに対応する(iOS/Universal Links)

前回のiOS版(*´ω`*) FlutterでDeepLinkに対応する(Android/App Links) - くらげになりたい。 Webサイトの特定のURLにアクセスするとアプリが開く、 Deep Linkに対応したいなと思い、 いろいろ調べてみたときの備忘録(*´ω`*) Flutterの公式ドキュメントはこ…

FlutterでDeepLinkに対応する(Android/App Links)

Webサイトの特定のURLにアクセスするとアプリが開く、 Deep Linkに対応したいなと思い、 いろいろ調べてみたときの備忘録(*´ω`*) Flutterの公式ドキュメントはこのあたり Deep linking | Flutter Set up app links for Android | Flutter Android アプリリ…

Flutter x AdMobでATT/GDPR対応

AATやGDPRをちゃんと対応しようと、 いろいろ調べてみたときの備忘録(*´ω`*) どちらともAdMobで対応できたので便利 google_mobile_ads | Flutter packageを利用 流れ 同メッセージの表示などのために、 User Messaging Platform(UMP)というのがあるらしい…

Flutter/DartでCallbackをFutureにする

TypeScriptとかだとCallbackをこんな感じで、 Promise化できるけど、Flutterでもしたいなと思い、 いろいろ調べてみたときの備忘録(*´ω`*) function myPromise(time){ return new Promise(resolve => { setTimeout(() => resolve(), time) }); } Completer…

FlutterでLottieをつかう&終了を検知する

FlutterでもLottieを使いたいなと思い、 いろいろ調べたときの備忘録(*´ω`*) lottie | Flutter package できたのはこんな感じ 進捗です(*´ω`*) pic.twitter.com/L19gqqcpXi— きらぷか@スプシAPI化&積読のサービス運営中 (@kira_puka) June 8, 2024 使い方 …

Flutterのボタンをゲームっぽいアニメーションにする

ほぞぼそと作ってるマグロのゲーム、 ボタンの動きをゲームっぽくしたくて、 いろいろ調べたときの備忘録(*´ω`*) maguro-sagashi.com 動きとしてはこんな感じで、ピョコンとなる感じ ちょっとはゲームっぽい動きのボタンになった(*´ω`*) pic.twitter.com/z…

Flutterのshare_plusがreleaseビルドだと動かない(Android/R8)

Flutterの共有機能にshare_plusを使っているけど、 --releaseでビルドしたときに、Androidでエラーになる。。 そのときに、いろいろ調べたときの備忘録(*´ω`*) 環境はこんな感じ Flutter: 3.19.6 share_plus: 9.0.0 Gradle: 8.2 com.android.tools.build:gr…

FlutterでMaestro入門してみた

FlutterでUIテストしたいなと思い、 Maestroについて、いろいろ調べたときの備忘録(*´ω`*) What is Maestro? | Maestro by mobile.dev インストール # インストール curl -Ls "https://get.maestro.mobile.dev" | bash # iOS用の追加インストール $ brew ta…

FlutterのAppLifecycleState/ConnectivityをRiverpodであつかえるようにする

flutter_hooksのuseAppLifecycleState()もあるけど、 RiverpodのProvider内でも扱いたいなと思い、 いろいろ調べたときの備忘録(*´ω`*) この記事がすごく参考になった! 【Flutter】Riverpodを利用しAppLifecycleStateとネットワーク接続(connectivity_plus…

flutter_genで特定のassetのパスを無視/対象外にする

flutter_genに日本語ファイル名だとエラーが出るので、 ignoreにしたいなと思い、いろいろ調べたときの備忘録(*´ω`*) flutter_gen | Dart package 設定方法 assets.excludeを使えばいいっぽい 書き方のサンプルは、このテストコードにあった flutter_gen/pa…

Flutterのgo_routerで現在のパスをwatch/listenする

Flutterのページ遷移には、go_routerを使ってるけど、 「ページが変わったらなにかしたい」みたいなのができないかなと、 いろいろ調べてみたときの備忘録(*´ω`*) 以下のIssueのコメントによいワークアラウンドがのっていた [go_router] ShellRoutes seem t…

Flutterで音声再生(audioplayers)

FlutterでもBGMや効果音を再生したいなと思い、 いろいろ調べてみたときの備忘録(*´ω`*) 参考サイトを見てみると、いろいろ違いがありそうだけど、 公式のCasual Games Toolkitで紹介されていたaudioplayersを試してみる。 audioplayers | Flutter package …

Flutter3.16から3.19への移行が大変だった

Flutter3.16から3.19へ移行してみようと思ったら、 かなりハマったので、いろいろ調べたときの備忘録(*´ω`*) Breaking changes | Flutter Deprecated imperative apply of Flutter's Gradle plugins | Flutter 環境はこんな感じ。主にAndroid側の設定でハマ…

dartのRetrofitでファイルをダウンロードする

Dart/Flutterでretrofit.dartを使って、 画像をダウンロードしたいなとおもい、いろいろ調べたときの備忘録(*´ω`*) アップロードはよく見るけど、ダウンロードはなかなかなくて困った。。 APIClientの定義 dioを直接使う形にすれば、 ファイルのダウンロー…

Flutterで端末の言語コードを取得するあれこれ(Localizations/PlatformDispatcher)

Flutterで多言語化したいなと思い、いろいろ調べてみたときの備忘録(*´ω`*) よくみるのはこんなコードだけど、 Locale locale = Localizations.localeOf(context); 日本語と英語のみをサポートしているときに、 簡体中文(デフォルト) 日本語 English みたい…

Flutterで相対時間を表示する(relative_time)

Flutterで3日前とか相対的な時間を表示したいなと思い、 いろいろ調べて見たときの備忘録(*´ω`*) これをつかえばいいっぽい relative_time | Flutter package 使い方 簡単な使い方はこんな感じ // 言語の自動選択版 RelativeTime(context).format(time); //…

FlutterのAdmobでリワード広告を表示する

前回の続き。バナー広告は表示できたので、 リワード広告も試してみたときの備忘録(*´ω`*) www.memory-lovers.blog リワード広告とは 長めの動画広告を見ると、ユーザが報酬を受け取れるタイプの広告 リワード広告とリワードインタースティシャル広告(β版)…

Flutter x Riverpod x SharedPreferences

FlutterでRiverpodを使って、SharedPreferencesを使いたいなと思い、 いろいろ調べたときの備忘録(*´ω`*) 公式だとこの辺り Initialization of Synchronous Provider for Async APIs | Scopes | Riverpod 全体のサンプルを作ってくれている人がいたので、 …

FlutterでAdMobを導入する

FlutterにAdMob広告をいれたいなと思い、 いろいろ調べたときの備忘録(*´ω`*) google_mobile_ads | Flutter packageを使えばいいっぽい ドキュメントやチュートリアルも用意されている ドキュメント: Flutter アプリに AdMob 広告を追加する チュートリアル…

FlutterGenでリソースファイルのパスを安全に扱う(画像/色/フォント名)

Flutter実践開発を読んでいいなと思い、 flutter_genを使ってみたときの備忘録(*´ω`*) 作者さんのブログ記事がわかりやすい コード自動生成の FlutterGen を作りました。Flutter 向けに画像リソースなどのコードを自動生成するためのツールです。 | by wasa…

Dart/FlutterのDioで認証をいい感じにする

Dioを使ってAPIリクエストをする際、 APIトークンやJWTなどを自動で設定したいなと思い、 いろいろ調べたときの備忘録(*´ω`*) dio | Dart package Interceptorというrequest/response/errorをinterceptする 機能があるっぽいので、そこで追加するようにすれ…

OpenAPIからDartを生成するパッケージ(swagger_parser/swagger_dart_code_generator)

前回の記事でopenapi.yamlからdartコードを生成できたけど、 OpenAPITools/openapi-generatorが吐くコードは、Dart2だったりとあんまりだった。。 TypeSpec(OpenAPI)でTypeScriptとDartのモデルを共通化する - くらげになりたい。 他にもなにかいいのがない…