KMM まとめ 速報 - Kotlin Multiplatform Mobile 【#ios | #android】

このページは随時更新していくページです。

まずは、2022年 Stable版リリースまで追っていきます。

開発時に使えるだろう記事をフォーカスしてまとめておきます。

連絡などは Twitter や Facebook の DM でどうぞ。

KMM まとめ 速報 ( Kotlin Multiplatform Mobile )【#ios | #android】



おすすめ

Googleは、この状況を改善するために、すべてのKotlinターゲットのための適切なマルチプラットフォームの成果物として、Composeランタイムを出荷すべきです。残念ながら、彼らのKotlinマルチプラットフォームの話は、コミュニティのニーズから数年遅れており、これがすぐに実現する見込みは非常に低い。

👉 Multiplatform Compose and Gradle module metadata abuse - Jake Wharton 

 

- New KMM library project wizard.
- Support for the new type of KMM library distribution: XCFramework.
- Enabled HMPP for new KMM projects.
- Support for explicit iOS targets declaration.
- Enabled KMM plugin wizards on non-Mac machines.
- Support for subfolders in the KMM module wizard.
- Support for Xcode Assets.xcassets file.
- Fixed the plugin classloader exception.
- Updated the CocoaPods Gradle Plugin template.
- Kotlin/Native debugger type evaluation improvements.
- Fixed iOS device launching with Xcode 13.

👉 KMM plugin releases | Kotlin 

クロスプラットフォームモバイル環境向け SDK の Kotlin Multiplatform Mobile(KMM)は、2020年8月にアルファ版として公開されました。

👉 アルファ版以降の KMM 新着情報 | The Kotlin Blog 

公式

👉 アルファ版以降の KMM 新着情報 | The Kotlin Blog 
👉 Kotlin Multiplatform Mobile がアルファ段階に移行 | The Kotlin Blog 
👉 Kotlin Multiplatform Mobile | Kotlin 

その他

👉 5分でわかる、Kotlin Multiplatform Mobile (KMM) 
👉 KMMでiOS・Android
を共通化しよう - dely tech blog 
👉 KMMというもう一つの選択肢 | bravesoft blog 
👉 Kotlin Multiplatform Mobile(KMM)がベータへ。コンカレント処理でのメモリリークフリー、iOSエコシステムとの連携強化など - Publickey 

実際に確認してみる

👉 AndroidStudio 利用する Java (JDK) の選択・設定の方法 
👉 Mac に Homebrew で OpenJDK11 を インストール する 

(このページは随時更新していくページです。)


Opt-in requirement marker annotation on override requires the same marker on base declaration

各記述を以下のように個別に置き換えるのがとりあえずシンプルでいいのかな。


@FlowPreview
→ @OptIn(FlowPreview::class)


@ExperimentalCoroutinesApi
→ @OptIn(ExperimentalCoroutinesApi::class)

gradle で一括で無視しときますか?

いうて、まだまだ変更がありそうなところではある。

Opt-in requirements (aka Experimental API support)

👉 kotlinx.coroutines/Annotations.kt at master · Kotlin/kotlinx.coroutines 
👉 [BUG] [multiplatform] ExperimentalAPI annotation from Kotlin 1.6.0 and above - githubmemory 
👉 Opt-in requirements (aka Experimental API support) · Issue #95 · Kotlin/KEEP 
👉 Opt-in requirements | Kotlin 

👉 @SuppressWarnings て使っていますか。 

2022-05-14 : 追記

→ Deprecated に。
👉 '-Xopt-in' is deprecated and will be removed in a future release, please use -opt-in instead hatena-bookmark


Android12でアイコンを四角にする方法

Android11 では、フォントやアイコン形状などはシステムUIのテーマとしてカスタマイズできていました。

Android11 custom theme icons

👉 Android 12 is missing font and icon shape customization 

しかし、Android12では、

android12 dynamic theme

フォント変更
→ できない。

アイコンの形状変更
→ できない。

👉 Android 12 Beta 3 Changelog: All the new features and changes! 

ということで、

Android12ではアイコンは丸型だけ。四角には変更できない。

ということになります。

このことについては、上記XDAデベロッパーサイトのコメントやGoogle Issue Tracker でも悲しみのコメントが多く寄せられています。

👉 Custom Styles missing from Wallpaper and Style menu [193775634] - Visible to Public - Issue Tracker 

しかし、Google 社員がコメントしているように、

“The custom style features (font, icon shape, icon pack, and accent color) in R are being replaced by the new dynamic theming feature that we are introducing in S. We see the new dynamic theming feature as more modern and intelligent. A simple and delightful experience that we hope all users can get to enjoy.”

「カスタムスタイル機能は、Android12ではダイナミックテーマ機能に置き換えられています。よりモダンでインテリジェントなものと見なされています。すべてのユーザーにシンプルで楽しい体験をお届けします。」

と、新しいダイナミックテーマ機能は、

- モダン
- インテリジェント
- シンプル
- 楽しい

ということなので心配ないようです。

使いづらくなっただけかと思ってびっくりしていましたが、

- モダン
- インテリジェント
- シンプル
- 楽しい

ということです。

よろしくおねがいいたします。

👉 アイコンの形は四角のほうが使いやすい 


Android バージョン別シェア 2021年11月

9系までで8割超えまであと少し。



Android platform versions 2021-11

👉 【Android12】「At a Glance」が壊れてる件 
👉 Android12 が来たので新機能を使ってみました。 


Jake Wharton さん「Android12、ロック画面 / 常時表示の時計が良い。」

Android12について何かつぶやいています。


Android 12にアップグレードしたばかり。システムUIの使いやすさと実用性の急激な低下傾向が続いています。通知ペインは、コンテンツを表示するためのエリアですが、実際のコンテンツの2倍のネガティブスペースがあります。システムUIのピークは、時計が動く前のAndroid8でした。

でも、ロック画面や常時表示はとても気に入っています。大きな時計がいい。さらに、今回は時間と分のフォントが同じ太さになっています。

Android12 always show clock and info

 

「ロック画面」とか?

スマホを利用したあと、

電源ボタンを押したり、

一定時間経過後に、

画面が変化していきます。


スリープ画面 (画面消灯)

 ↓ 再度画面をオン

ロック画面

スリープ画面 (時間と情報を常に表示時 ※設定は後に記述)
Android12 消灯画面クロック表示

ロック画面
Android12 lock screen clock

 

各画面への条件や操作設定

利用画面から スリープ画面(画面消灯) へ遷移するには、

一定時間経過させるか、電源ボタンで消灯。


設定

 ↓

ディスプレイ

 ↓

画面消灯

Android12 画面消灯時間設定

この スリープ画面(画面消灯)時にも、

ロック画面のように、時計などが表示できる。


設定

 ↓

ディスプレイ

 ↓

ロック画面

 ↓

時間と情報を常に表示

Android12 時計と情報を常に表示する

さらに、ロック画面 へ遷移するには、

さらに、そこから、

一定時間経過させるか、電源ボタンでロック。


設定

 ↓

セキュリティ

 ↓

画面ロック 歯車アイコン

 ↓

画面消灯後からロックまでの時間

電源ボタンですぐロックする

Android12 画面ロック

うん、確かに見やすいし、使える。

しかしこの、

スリープ常時時計表示は、

暗闇で、

「OK、グーグル 今何時?」 とか言わなくても良いのだが!

👉 Android12 が来たので新機能を使ってみました。 | #android ファショ通 
👉 【Android12】「At a Glance」が壊れてる件