Jetpack Compose:再Composeとスキップ

投稿日:  更新日:

Jetpack Composeは描画処理の軽量化(消費リソース量の削減)をするために、表示の変更されたUI要素のみを再Composeし、表示の変わらないUI要素をスキップします。これにより、高い表示パフォーマンスを維持しています。

しかし、スキップが正常に行われないとしても、アプリの画面に現れて来ません。なぜなら、同じ表示を無駄に繰り返すことになるからです。

アプリは動くけれど動作が鈍いならば、真っ先に疑うポイントです。不要な再Composeが行われている可能性が考えられます。

これは気付かないうちに蓄積し易い不具合です。ですので、再Composeとスキップについて理解し、予防に努めることをお勧めします。

今回は「再Composeとスキップ」について、まとめます。

※環境:Android Studio Giraffe | 2022.3.1 Patch 1
    Kotlin 1.8.10
    Compose Compiler 1.4.3
続きを読む

Jetpack Compose:Composeによるアプリ画面の描画

投稿日:  更新日:

Jetpack ComposeはAndroidシステムの新たなUIフレームワークです。従来のViewシステムと、アプリ画面の描画の仕組みが異なります。

このJetpack Composeによるアプリ画面の描画について、仕組みの大枠をまとめます。

※環境:Android Studio Giraffe | 2022.3.1 Patch 1
    Kotlin 1.8.10
    Compose Compiler 1.4.3
続きを読む

Kotlin:classおよびdata classのequals( )関数の動作

投稿日:  更新日:

Kotlinにおいて、各クラスのインスタンスに自動生成されるequals()関数は、classとdata classで比較対象に違いがあります。

紛らさしいので、まとめます。

※環境:Android Studio Giraffe | 2022.3.1 Patch 1
    Kotlin 1.8.10
続きを読む

Jetpack Compose:Layout Inspectorで再Composeを確認

投稿日:  更新日:

表示の変わらないUI要素(Composable関数)に対して行われる再Composeは無駄な処理です。

ですので、極力排除したいところですが、表示が変わらないため、画面上からの判断が難しくなっています。

このようなとき、Layout Inspectorを利用すると、無駄な再Composeを見つけ出すことが出来ます。

※環境:Android Studio Giraffe | 2022.3.1 Patch 1

続きを読む

Remote Repositoryの構築と参照(Giraffe版)

投稿日:  更新日:

Remote Repositoryの構築と参照方法について、まとめます。

この記事は「Remote Repositoryの構築と参照(2022.04発行)」をAndroid Studio Giraffe(2023.07)向けに書き直したものです。

Gradle Ver7.x以降、リポジトリの構築方法が若干変更になりました。

また、GiraffeよりGradleでKotlin DSLが推奨になりました。それに従い、ビルドスクリプトをKotlinで記述したコードに置き換えています。

※環境:Android Studio Giraffe | 2022.3.1
   :Android Gradle Plugin 8.1.0
   :Gradle 8.0

続きを読む