2024-03-01から1ヶ月間の記事一覧
「リアルタイムデータベースやプッシュ通知だけでなく、認証、アナリティクス、クラウドファンクションなど、多岐にわたる機能を提供しており、アプリ開発のさまざまな面で役立ちます」ということですが、今回はリアルタイムデータベースやプッシュ通知につ…
Jetpack Composeでは、ConstraintLayoutは第一の選択肢でないようです。 Bootstrapのグリッドシステムっぽい手法に近いのかとも思いましたが、それとも違うようです。 Jetpack ComposeのConstraintLayoutの例を示してください。 ConstraintLayoutの方が一般…
Jetpack ComposeでUIをデザインする際、Composable関数内に登場するStateFlow。 StateFlowのvalueが更新されることで、関連するComposable関数が再実行され、結果、StateFlowのvalueを参照するコンポーネントの表示も変わることになります。 ところで、非同…
Jetpack ComposeのColumnとRowの使い方を勘違いしていました。 あと、RadioButtonやCheckBox, LazyColumn, LazyRowといった複数の値や状態を持つコンポーネントの状態管理も、コード上の変数を通して管理するようで、従来のXMLベースのUIとは違った感じです…
音声録音の方法を聞いてみました。 ストリーミングと聞いて、リアルタイム音声通信などはできるかと思い、後半で聞いてみましたが、そちらはAndroid標準の機能だけで実装するのは難しそうです。 アプリ内から、音声の録音、録音したファイルの保存を行う方法…
メニューの作成も、各画面への遷移も、Jetpack Composeを使うとかなり楽になりますね。 Scaffoldを用いたメニューのデザイン、画面の遷移、Androidデバイスによるメモリ管理に関わらず値を保持する方法など、教えてください。 sharedPreferencesを用いたデー…
プラットフォームに依存せずどこでも使えるKotlinの依然性注入ライブラリ、Kodeinを、Androidアプリで使う方法について、ChatGPTに聞きました。 AndroidManifest.xmlに登録したクラス内で初期化するようです。 Kotlinの依存性注入ライブラリ、Kodeinの概要を…
Jetpack Composeを用いるアプリが肥大化すると、UI確認のためにビルドが必要なことがネックになり、マルチモジュール化が必要になるそうです。 後々苦しまないよう、早めにChatGPTで聞いてみました。 マルチモジュール化とは何ですか? どうやって実現するの…
ChatGPTに教えてもらいました。 僕は、Androidアプリ開発における、ViewModel以前を知りません。 Androidアプリの開発手法の変遷について教えてください。 このような変遷における、ViewModelの意義を教えてください。 データモデルとUIの間にViewModelを置…
Javaで書かれたJBox2DならKotlinでも使えます。 物理エンジンは、フレームレートの調整なども行ってくれるようです。 今は気が進みませんが、気が向いたら、使ってみようと思います。 あと、蛇足ですが、「衝突検知」というと難しいと思っていましたが、単純…
ForegroundServiceを用いるとのことです。 イメージは、音楽再生アプリで、バックグラウンドでアプリが実行中であることを示す通知が表示されます。 ForegroudServiceの使い方を教えてください。 上のコードの内部的振る舞いも教えてください。 サンプルコー…
ゲームプログラミングなどで、プログラムで音声の再生や停止、切り替えをする方法が知りたくて、ChatGPTに聞きました。 音声を再生するにはどうするのですか? MediaPlayerオブジェクトとDisposableEffectについて、もう少し詳しく教えてください。 MediaPla…
既存のRecyclerViewと、LazyColumn, LazyRowを比較しつつ、解説してもらいました。 Jetpack Composeに、既存のRecyclerViewに相当するComposable関数はありますか? RecyclerViewと、LazyColumn/LazyRowの機能を比較してください。 LazyPagingItemsの概要と…
Composable関数が未提供の既存ViewをComposeで使用する方法です。 WebViewほか、MapViewなどはまだ未提供なため、以下で教わった方法が必要らしいです。 Jetpack ComposeでWebViewに対応する機能を持つComposable関数があれば教えてください。 AndroidViewシ…
単に画像を表示するにしてもいろいろなやり方があるのですね。 キャラクターの上下左右向きの画像を一つの画像(スプライトシートという)として持ち、描画時に向きに対応した部分のみ切り抜いて表示するという手法を教えてもらいました。 Canvasを8x8のマスに…