本文へスキップ
すべての記事

#android

38 記事 タグ android.

MFKAPPS 1 分で読めます

2026年のRoom TypeConverters: enum・日付・リストをスキーマを壊さずに保存する

AndroidのRoom TypeConvertersに関する実践ガイド — enum、Instant/LocalDate、そしてリスト — さらに、コンバーターを静かなデータ破損バグに変えてしまう間違いについて。

#android #engineering #room
MFKAPPS 1 分で読めます

Kotlin、Room、Composeのための R8とProGuard:リリースビルドだけで起きるクラッシュ

Room + Compose の Android アプリがデバッグでは完璧に動き、本番でクラッシュする理由と、ユーザーより先にそれを捕まえる具体的な R8/ProGuard keep ルール。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

Android の In-App Review API:うっとうしくならずに評価を頼む方法

Google の In-App Review API の実践ガイド。実際の仕組み、表示すべきタイミング、そしてありがちな『評価してください』ポップアップが Play ストアの評価を静かに損なっている理由。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

Androidのアプリショートカットとクイック設定タイル:アプリを開かずに水分補給を記録する

AndroidのダイナミックShortcutManager APIとTileServiceの実践ガイド — ワンタップの操作でアプリ起動を完全にスキップする方法と、多くの実装が陥りがちな落とし穴について。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

2026年のAndroidにおけるフォアグラウンドサービスタイプ: 自分の機能に本当に当てはまるものを選ぶ

Androidのフォアグラウンドサービスタイプの制限に関する実践ガイド — dataSync、mediaPlayback、specialUse、shortService — 強制終了や審査却下を避けて正しいタイプを選ぶ方法。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

Jetpack ComposeにおけるStateFlow対SharedFlow: リプレイバグを起こさずにUI状態をモデル化する

ComposeのViewModelでStateFlowをいつ使い、SharedFlowをいつ使うか——そして両者を取り違えたときに起きる一回限りのイベントのバグについて。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

2026年のRoomデータベースインデックス:本当に遅いクエリを見つけて直す

AndroidでRoom/SQLiteデータベースにインデックスを張る実践ガイド — EXPLAIN QUERY PLANの読み方、勘に頼らない@Indexの追加、インデックスを静かに無効化してしまう間違い。

#android #engineering #room
MFKAPPS 1 分で読めます

RoomのRelationで一対多データをN+1クエリなしに取得する

Roomの@Relationアノテーションの実践ガイド — カテゴリとエントリのような一対多データを、N+1クエリや手動のjoinなしでモデリングする。

#android #engineering #room
MFKAPPS 1 分で読めます

Jetpack Composeにおける型安全なナビゲーション:ルートを文字列ではなくデータとして扱う

文字列ベースのCompose Navigationルートを、シリアライズ可能なKotlinオブジェクトに置き換える方法 — 型安全な引数、ネストしたグラフ、そしてリファクタリングを生き延びるディープリンク。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

Android 16のLive Updates: Mintlyの集中タイマーをロック画面に表示する

Android 16の進捗中心型通知の実践ガイド — ProgressStyleのセグメント、昇格されたオンゴーイング通知、そして実行中のポモドーロタイマーにそれらが何をもたらすか。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

2026年のAndroid通知チャンネル:ユーザーがミュートしない重要度を設計する

Android通知チャンネルの実践ガイド — 重要度レベル、チャンネルグループ、作成後に設定が固定される理由、ユーザーの信頼を失わずに移行する方法。

#android #engineering #notifications
MFKAPPS 2 分で読めます

Room と Paging 3:2026 年、Android で肥大化する取引リストをスムーズに保つ

Jetpack Paging 3 を使って Room ベースの取引リストをページングし、何年分ものデータでも Compose でスムーズに動かす方法 — RemoteMediator 不要、ネットワーク不要、ローカルデータベースを正しく扱うだけ。

#android #engineering #room
MFKAPPS 1 分で読めます

Androidの16KBページサイズ移行:実際に何が壊れ、APKをどう確認するか

Googleは今、Androidアプリに16KBメモリページのサポートを求めている。実務上何を意味するのか、なぜネイティブライブラリが壊れるのか、自分のアプリが安全かどう確認するかをまとめた。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

2026年のAndroidにおける構造化並行性:スコープ、キャンセル、そして防がれるリーク

AndroidにおけるKotlin構造化並行性の実践ガイド — viewModelScopeとlifecycleScopeの違い、キャンセルが伝播する理由、そして静かに防がれるコルーチンリーク。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

Jetpack Composeのリコンポジション:本当のトリガーは何か、そして推測をやめた理由

2026年版Jetpack Composeリコンポジション実践ガイド — 型の安定性、不安定なラムダ、LazyColumnのキー、そしてコンパイラ自身のメトリクスレポートの読み方。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

Room の全文検索:2026 年、ローカルファーストな Android アプリに即時検索を追加する

Room の FTS4 サポートを実践的に解説 — 検索用の仮想テーブルを構築し、トリガーで同期を保ち、なぜ FTS5 には手動マイグレーションが必要なのか。

#android #engineering #room
MFKAPPS 1 分で読めます

2026年、Roomデータベースを暗号化する: SQLCipher、Keystore、データを失わない移行

AndroidでRoom/SQLiteデータベースを保存時に暗号化するための実践ガイド — Keystoreによる鍵管理、一度きりの移行、そして実際のパフォーマンスコスト。

#android #engineering #privacy
MFKAPPS 1 分で読めます

2026年、Androidでローカルファーストなデータをバックアップする: SAFエクスポート、Auto Backup、そして信頼できる復元フロー

サーバーを持たないローカルファーストのAndroidアプリが、どのようにユーザーデータをバックアップするか — SAFによるエクスポート/インポート、Auto Backup for App Data、そして上書き前に検証を行う復元処理について。

#android #engineering #privacy
MFKAPPS 1 分で読めます

2026年、ローカルファーストなAndroidアプリをテストする — 実際のバグを見つけるRoom、Flow、Compose UIテスト

2026年版、ローカルファーストAndroidアプリの実践的なテスト戦略 — インメモリRoomによるDAOテスト、FlowのためのTurbine、そして本当に書く価値のある数少ないCompose UIテスト。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

2026年のAndroid生体認証:BiometricPrompt、Keystore、ローカルファーストアプリのロック

androidx.biometricの実践ガイド — BiometricPrompt、CryptoObjectに裏付けられた鍵、デバイス認証情報へのフォールバック、そして指紋チェックが何も守らなくなる典型的な間違い。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

2026年のAndroidアクセシビリティ:実際に使えるTalkBackとCompose semanticsのチェックリスト

2026年版、実践的なAndroidアクセシビリティチェックリスト——TalkBack、Compose semantics、タップ領域、そしてリリース前に毎回行うテストの手順。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

2026年のAndroid Health Connect:ローカルファーストを手放さずにデータを読み書きする

AndroidのHealth Connect APIに関する2026年の実践ガイド — 権限、バックグラウンド読み込み、そしてローカルファーストなアプリがそれを「真実」ではなく「オプション」として扱うべき理由について。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

2026年のAndroidにおけるedge-to-edgeとpredictive back:今や必須になったことと、UIを壊さない方法

edge-to-edgeはAPI 35以降で強制になり、predictive backはデフォルトのジェスチャーになった。Composeのinsets、WindowInsets、PredictiveBackHandlerについての実践ガイド。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

2026年のJetpack DataStore:設定を一つも失わずにSharedPreferencesから移行する

SharedPreferencesからJetpack DataStoreへの移行に関する実践ガイド — 非同期の落とし穴、既存の値を保持する移行パス、そしてそれをどうテストするか。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

2026年、AndroidにおけるML Kitバーコードスキャン:Stockyが1秒未満でパントリーに商品を追加する仕組み

ML KitとCameraXによる端末内バーコードスキャンの実践的な2026年版ガイド。フォーマットの絞り込み、オフラインの商品検索、そしてパントリーアプリを支える部分使用の計算まで。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

2026年のRoomデータベースマイグレーション: 1行もデータを失わずにスキーマ変更を出荷する

AndroidのRoomデータベースマイグレーションに関する実践ガイド — AutoMigration、手書きのMigrationオブジェクト、そしてユーザーがバグを見つける前にマイグレーションをテストする方法。

#android #engineering #room
MFKAPPS 1 分で読めます

Androidのベースラインプロファイル: 2026年、コールドスタート時間を実際に左右するもの

Android Baseline Profilesの実践ガイド — Macrobenchmarkでの生成方法、Gradleへの組み込み、実際の効果測定、そしてコールドスタートを左右する他の3つの要素。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

2026年のJetpack Glance:データについて決して嘘をつかないホーム画面ウィジェットの作り方

Jetpack Glanceウィジェットの実践ガイド — 状態管理、タップアクション、そしてウィジェットに古いデータを表示させてしまう更新クォータの落とし穴について。

#android #engineering #kotlin
MFKAPPS 1 分で読めます

OldSchool の服薬カレンダーを作る: 服薬タップを信頼できる1日に変換する

月間の服薬カレンダーは1日ごとの単なる色付きドットに見える。その裏にあるイベントモデル、日次ステータスのルール、そして時間厳守率の計算をデバイス上で解説する。

#android #engineering #room
MFKAPPS 1 分で読めます

Subly の裏側:サブスクリプション更新日を支えるカレンダー計算

サブスクの次回請求日を予測するのは、月末請求・うるう年・トライアル移行にぶつかるまでは単純に見える。Subly が端末上でどうそれを正しく処理しているかを解説する。

#android #engineering #subscriptions
MFKAPPS 1 分で読めます

Mintly を作る: Android がプロセスを殺そうとする中で集中タイマーを正確に保つ

動作中の Pomodoro タイマーは、一度きりのリマインダーより難しい信頼性の問題を抱えている。フォアグラウンドサービスと壁時計ベースの終了時刻で、Mintly が Doze・プロセス終了・画面オフ中のずれをどう乗り越えたかを解説する。

#android #engineering #mobile
MFKAPPS 1 分で読めます

Granynを作る: 銀行ログインなしの家計簿を、3つのテーブルで

Granynが銀行口座を一つも連携せずに、複数通貨での支出を追跡し、定期的な請求を検知する仕組み — その裏にあるRoomスキーマと、そこで生じるトレードオフ。

#android #engineering #privacy
MFKAPPS 1 分で読めます

Androidの通知アクションを正しく作る:アプリを開かずに服用済みを記録する方法

Androidの通知アクションボタンの実践ガイド — PendingIntent、アクティビティ・トランポリン制限、goAsync()、そしてRoomの状態を安全に更新する方法。

#android #engineering #notifications
MFKAPPS 1 分で読めます

Stocky を作る:キッチンで何が切れるかを予測する — しかも端末の上で

バーコードのスキャンとちょっとした使用履歴を、切らす前に現れる買い物リストへと Stocky がどう変えるのか。すべての計算も、すべてのデータも、あなたの電話の中にとどめたまま。

#android #engineering #privacy
MFKAPPS 2 分で読めます

AndroidでのプライバシーファーストなOCR: Sublyがクラウドを使わず請求書を読み取る仕組み

ML Kit Text Recognitionを使ったAndroidのオンデバイスOCRに関する、2026年の実践的なガイド。セットアップ、コード、そしてユーザーのデータをサーバーに残さないためのフィールド抽出のコツを解説します。

#android #engineering #privacy
MFKAPPS 2 分で読めます

2026年の信頼できるAndroidリマインダー:WorkManager、正確なアラーム、そして新しいバッテリールール

2026年のAndroidで本当に発火するリマインダーを出荷する方法 — WorkManager対AlarmManager、SCHEDULE_EXACT_ALARM、POST_NOTIFICATIONS、そして今なお噛みついてくるOEM特有のクセ。

#android #engineering #mobile
MFKAPPS 2 分で読めます

2026年のローカルファーストなAndroid: SQLite、Room、そしてユーザーデータを端末に残すこと

RoomとSQLiteでローカルファーストなAndroidアプリを作るための2026年版ガイド — スキーマ設計、マイグレーション、WAL、エクスポート、そして同期をいつ足すべきか(いつ足すべきでないか)。

#android #engineering #privacy
MFKAPPS 1 分で読めます

2026年、個人開発者としてAndroidアプリをリリースする方法

2026年に一人でKotlin + ComposeのAndroidアプリを最初から最後までリリースするための実践的なローンチ・プレイブック——スコープ、開発、Play Storeの掲載、そしてリリースできるかどうかを左右する地味な部分。

#android #indie #mobile