Kotlin 1.8 で JetpackCompose を使う

Kotlin を 1.7.21 から 1.8.0 に上げます。


[versions]

# kotlin = "1.7.21"
kotlin = "1.8.0"
compose-compiler = "1.4.0-alpha02"

build します。

はい、エラーでました。


e: This version (1.4.0-alpha01) of the Compose Compiler requires Kotlin version 1.7.21
but you appear to be using Kotlin version 1.7.21 which is not known to be compatible.
Please fix your configuration (or `suppressKotlinVersionCompatibilityCheck` but don't say I didn't warn you!).
https://developer.android.com/jetpack/androidx/releases/compose-kotlin#pre-release_kotlin_compatibility

表示されてるリンクに行きます。

はい、Kotlin 1.8 ありません。

👉 Compose to Kotlin Compatibility Map  |  Android Developers hatena-bookmark

さらに、そのページにあるリンク先へ。

ここにありますね。

👉 Compose Compiler Maven Index hatena-bookmark

さらに、このページにあるリンク先の記述を参考に変更します。


# libs.versions.toml

[versions]

# kotlin = "1.7.21"
# compose-compiler = "1.4.0-alpha02" # composeOptions ↔ kotlin 1.7.21

kotlin = "1.8.0"
compose-compiler = "1.4.0-dev-k1.8.0-33c0ad36f83"


// settings.gradle

dependencyResolutionManagement {
  repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
  repositories {
    google()
    mavenCentral()

    maven {
      url "https://androidx.dev/storage/compose-compiler/repository/"
    }


// build.gradle (:app)

composeOptions {
  kotlinCompilerExtensionVersion libs.versions.compose.compiler.get()
}

👉 jimgoog/ComposeAppUsingPrereleaseComposeCompiler: Demonstrates using Compose with pre-releases of KotlinCompiler and ComposeCompiler hatena-bookmark


 

■ まとめ

Kotlin バージョンと Compose Compiler のバージョンは密接に関係しています。

ちなみに、Compose UI 側のバージョンは以前のままの alpha03 (現最新) で、まあまあ良さげです。


[versions]

kotlin = "1.8.0"
compose-compiler = "1.4.0-dev-k1.8.0-33c0ad36f83"
compose-ui = "1.4.0-alpha03"


[libraries]

compose-ui = { module = "androidx.compose.ui:ui", version.ref = "compose-ui" }
compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling", version.ref = "compose-ui" }
compose-ui-tooling-preview = { module = "androidx.compose.ui:ui-tooling-preview", version.ref = "compose-ui" }
compose-ui-test-manifest = { module = "androidx.compose.ui:ui-test-manifest", version.ref = "compose-ui" }
compose-ui-test-junit4 = { module = "androidx.compose.ui:ui-test-junit4", version.ref = "compose-ui" }


【AndroidStudio】プラグイン Rainbow Brackets が括弧だけでなく 変数 まで色が付くようになる【IDEA】

ネストする括弧を分かりやすく色分けしてくれるプラグイン「Rainbow Brackets」。

👉 IntelliJ IDEA プラグイン「Rainbow Brackets」を使う hatena-bookmark

ついに、変数 (variables) まで色分けしてくれるようになっております。

これが、

こうなる。

少しうざい、括弧だけでいい、という方は、詳細設定できます。

👉 Incompatibility with Semantic highlighting · Issue #2563 · izhangzhihao/intellij-rainbow-brackets hatena-bookmark


Google Fit アプリの 体重グラフ Android版 と iPhone版の表示の違い

Google Fit のグラフ表示。

体重だけではないですが、なんか見づらくありませんか。

新年そうそう、体重の増減を確認します。

Android / iPhone アプリでグラフを見ます。

それぞれの OSで、表示されるグラフは、


- トップ画面

- 週

- 月

- 3か月

- 年

と、5種類あります。

同じデータでも、グラフの山の計算方法や、表示される期間が違います。

以下、2023年元旦の時点で表示されるグラフです。

 

■ Android

トップ画面



3か月


 

■ iPhone

トップ画面



3か月


 

■ まとめ

2023年、元旦の時点では、

iPhone 版の 3か月 表示が一番体重の増減が分かりやすいように思います。

表示期間の範囲設定が少し微妙に思えます。

しかし、まあ、正月は太るので嫌ですね。

👉 Google Fit hatena-bookmark