アプリチームの松田です。
機能紹介
早速、新しくなった機能を紹介していきます。
今まではアプリ内の選択画面から選択する事しかできませんでした。
今後は上部に他のアプリを開くボタンがありますので、そちらから他のアプリで画像を選択する事ができるようになりました。元々あったリロード機能は、画像リストを下方向に引っ張ってリロードができるようになっています。
旧 | 新 |
押すとこのようにデバイスの画像一覧が表示され、更に他の外部アプリ(Google Photo)等を選択する事ができます。
これにより、Google Photo等から画像を選択できますので、他のデバイスで撮影した画像を簡単に投稿する事ができるようになりました。
実装背景
この機能は自分が複数のデバイスを持っており、投稿が大変になっていた事から実装しました。
Rettyでは新規UIコンポーネントはJetpack Composeを使用して実装するようにしていますので、この画面は全てComposeで作成されています。UI部分はComposeでとても簡単に実装できました。
Jetpack Compose
Composeを導入している事は発信していましたが、どのように、どれくらい使用しているかあまり触れていなかったので軽く紹介します。
Composeは既存のモジュールと分けていて、更に画面ごとにもモジュールを分けています。これにより、意図しない画面間のパーツの共通化が起きないようにしています。共通部品用の専用モジュールはありますので、本当に共通化して大丈夫かを吟味して共通化を行っています。
現時点では、画面ごとのモジュールが11個あります。(画面全てをComposeにできておらず、部品だけの画面も含む)
基本的に公式ドキュメントを参考に実装しています。
https://developer.android.com/jetpack/compose/state