ANTIGRAVITY LABEN
TAG

Android

54 記事
タグ一覧に戻る
関連タグ:
antigravity20Antigravity17app-dev13ios12Jetpack Compose6iOS5AI Studio5kotlin5jetpack-compose4Kotlin4モバイル開発4agents3
アプリ開発/2026-06-25上級

日付が変わった瞬間に、昨日の壁紙がもう一度出た — 時刻処理をエージェント任せにしないための日付境界設計

毎日入れ替わる壁紙が、日付の変わり目に昨日と同じものを出したり、海外移動中の利用者だけ二回切り替わったりしていた問題を、端末時計・タイムゾーン・夏時間の三つに分けて設計し直した記録です。エージェントが書いた素朴な時刻コードのどこが本番で崩れるか、安定した日付キーの作り方、巻き戻し時計への防御、注入可能な時計でのテストまでを個人開発の視点でまとめました。

アプリ開発/2026-06-25上級

お気に入りを一つ押すたびに、見えている壁紙が全部描き直されていた — Compose の再コンポーズを実測で止めた記録

壁紙アプリのグリッドで、お気に入りを一つ切り替えるたびに可視サムネイル全件が再コンポーズされていた問題を、Composition Tracing で実測してから直した記録です。不安定な引数の特定、データモデルの安定化、ラムダと派生状態の扱い、修正前後の再コンポーズ回数の比較までを個人開発の視点でまとめました。

アプリ開発/2026-06-24上級

三つの経路がそれぞれ番号を振っていた — versionCode を単一の真実から決めて配信を止めない設計

AI Studio がワンプロンプトでアプリを生成し Play の内部テストへそのまま上げられるようになった結果、人手・CI・エージェントの三経路が別々に versionCode を採番して衝突するようになりました。番号を単一の真実から決め、アップロード前に照合するガードまでを実装つきで整理します。

アプリ開発/2026-06-24上級

生成から実機、内部テスト配信まで一手でつながった日に、私が手放さなかったもの — AI Studio の一気通貫を個人開発の配信フローに据える

AI Studio がテキストから Kotlin/Compose アプリを生成し、エミュレータ・実機・Play 内部テストまで一画面でつなぐようになりました。便利さの裏で「配信の瞬間」をどこまで機械に預け、どこを自分の手で握るか。個人開発で複数アプリを抱える立場からの線引きと、その境界を支える実装をまとめました。

アプリ開発/2026-06-23上級

レビュー導線を出したのに何も表示されない — Play In-App Review の数量制限と「表示保証なし」前提の設計

Play In-App Review API は launchReviewFlow が成功しても、ダイアログが表示されたとは限りません。数量制限・表示保証なし・テストでの無音化という3つの罠を解きほぐし、満足の瞬間に出して衝突を避ける発火設計を、Antigravity に実装させる手順とあわせて記録します。

アプリ開発/2026-06-23上級

インストール直後だけ起動が一拍遅い — Baseline Profile で Android のコールドスタートを実測で詰めた手順

更新直後やインストール直後だけ Android アプリの起動が一拍もたつく原因を JIT と Cloud Profile の観点で切り分け、Baseline Profile でコールドスタートを実測で詰めた手順を、Macrobenchmark の構築から段階公開での監視まで個人開発の視点でまとめました。

アプリ開発/2026-06-22上級

リリースビルドだけで落ちる — R8 フルモードが Gson のマッピングを壊したときの調べ方と直し方

デバッグでは動くのにリリースだけでクラッシュする。R8 フルモードが Gson のリフレクションを壊す典型と、mapping.txt を使った原因特定、keep ルールの最小化までを実装視点でまとめます。

アプリ開発/2026-06-22中級

アプリ内の言語切り替えを、端末の言語設定と切り離して実装する — Android Per-App Language の実装メモ

Android のアプリ内言語切り替えを AppCompatDelegate.setApplicationLocales と locales_config で実装する手順と、API 33 未満の互換・プロセス再生成・AdMob まわりの落とし穴を実装視点でまとめた記録です。

アプリ開発/2026-06-22上級

壁紙ビューアのスライドショーとページ送りスクラバーを iOS から Android へ逆移植する — SnapHelper との双方向同期でつまずいた点

iOS 版の全画面壁紙ビューアにあったスライドショーと下部スクラバーを Android へ逆移植した実装記録。RecyclerView と SnapHelper で現在ページを確定させ、スクラバーと双方向同期し、自動送りとユーザー操作の競合を状態機械で解いた手順を Kotlin の動くコードで共有します。

アプリ開発/2026-06-21上級

戻るボタンで広告が出る/出ないが安定しない — 入れ子のifを独立ガードのリストに作り替えた記録

戻るボタン押下時のインタースティシャル表示判定が、入れ子のif文で優先度が暗黙化して壊れていました。各条件を理由つきの独立ガードに分解し、決定表からテストを生成した設計をまとめます。

アプリ開発/2026-06-21上級

Play Store の密度分割で、特定の端末だけ内蔵壁紙が消えた — drawable と nodpi の境界設計

App Bundle の密度分割は、密度別に分けてはいけない画像まで分けてしまうと、特定の密度バケットの端末からだけリソースを取りこぼします。bundletool で再現し、drawable-nodpi への移動か密度分割の無効化で直すまでを、判断基準ごと残しました。

アプリ開発/2026-06-18上級

AI Studio のネイティブ Android 生成コードを本番アプリに入れる前の検め方

AI Studio のネイティブ Android vibe coding は驚くほど速く動く画面を出します。ただ、稼働中のアプリへ取り込む前には専用の検めが要ります。生成 Kotlin を本番に入れる前のレビュー設計をまとめます。