Androidアプリ開発の覚書き

Androidアプリ開発を、Kotlin, Jetpack Composeで行っています。気になったことをChatGPTに聞いて記事にしています。

非同期処理

設定値の保存:SharedPreferencesよりはDataStoreを用いる

2020年に導入されたというDataStoreオブジェクトを用いて、設定値を保存する方法を聞きました。 SharedPreferencesを改善するために導入されたものだそうですが、キー・値のペアを保持する際、キーに値の型情報を持たせるという手法を用いていたり、非同期処…

Android, Kotlinの非同期処理

Jetpack ComposeでUIをデザインする際、Composable関数内に登場するStateFlow。 StateFlowのvalueが更新されることで、関連するComposable関数が再実行され、結果、StateFlowのvalueを参照するコンポーネントの表示も変わることになります。 ところで、非同…

100MBほどのデータをアプリ実行中にダウンロードするには(Retrofit, Kotlin Coroutine)

ネットワークから100MB程度のデータを最初だけダウンロードしたい場合、どういう処理が良いか。日本語で検索するとかなり古いAndroidフレームワークで利用されていた方法だったり、簡潔なKotlinの非同期処理を用いていないものだったりするので、お手上げで…

ボタン押下後の長い処理とか、二度押し禁止とか

本職で何年かプログラマーをしていましたが、その頃に比べても、非同期処理を普通に用いるAndroidプログラミングはすごく難しく感じます。 ChatGPTがなかったら、ずっと悩んだままだったかもしれません。 ボタンを押した後、時間がかかる処理をするときは、c…