【Compose】デスクトップアプリを初めて試してみる

序文

長年 Android 開発者として活動してきましたが、Jetpack のリリース以来、Compose コンポーネントに深く惹かれてきました。昨年、新しいバージョンの Android Studio を使用してテンプレートを作成しましたが、多くの時間とエネルギーを投資しませんでした。あまり注目していなかったもう 1 つのニュースがあります。それは、kotlin の親会社である Jetbrains も、昨年末に Compose Multiplatform (compose-jb とも呼ばれます) を開始しました。バージョン。これにより、私は突然悟ったように感じました。私のレイアウトはまだ開いていません。それを Jetpack ツールキットの UI コンポーネントとして扱うことはできません。その目標はクロスプラットフォームであることがわかり、壊れたり黒くなったりすることはありませんでした。 Androidなら上で書いたコード(kotlin)はPC側でも再利用でき、アプリの一部モジュール(現在のWeChatデスクトップ側など)も簡単に移植できるので念願になります。 Kotlin+compose は、モバイル Counter- Attack PC から移行しようとします (デスクトップ プログラムを書くことを忘れないでください。私は C++ があまり得意ではありません。Qt を学ぼうとしていますが、どのようなスイングですか? おい、それについては触れないでください)。

もちろん、Flutter はずっと前からそれを行うことができましたが、まず Dart について知る必要があると言わざるを得ません。Android 開発者であれば、kotlin を学習または使用しており、UI を構築するために Compose を使い始めているはずです。はい、すべて問題なくうまくいきました。

compose-jb: マルチプラットフォームを構成します。次の 3 つが含まれます。

  • compose-android:つまり Jetpack Compose
  • compose-desktop: 即、デスクトップ用に作成
  • compose-web: 即、Web 用に作成
  • compose-ios: iOS 用に作成 (まだ、アクションがあると聞きました)

準備

今すぐデスクトップでの作成と公開を体験してください。環境要件:

  • IntelliJ IDEA 2020.3 以降。
  • コンパイルには JDK 11 以降が必要で、パッケージ化のリリースには JDK 15 以降が必要です。

ダウンロード URL: https://jdk.java.net/archive/
ダウンロード URL: https://mirrors.huaweicloud.com/openjdk/18.0.2/

プロジェクトを作成する

ここに画像の説明を挿入
Gradle同期の待機を作成します。インターフェースをプレビューしたい場合は、設定 -> プラグインで作成エントリ関数を検索してください
ここに画像の説明を挿入
。Main.kt の main() です。スタイルも Google 風味たっぷりのマテリアルです。
ここに画像の説明を挿入

パック

包装形態は任意に選択可能です。ルートディレクトリの build.gradle.kts で設定されます。サイドバーでタスクを選択し、ダブルクリックして実行します。私のホストはウィンドウなので、msi を試してください。

enum class TargetFormat(
    internal val id: String,
    internal val targetOS: OS
) {
    
    
    AppImage("app-image", currentOS),
    Deb("deb", OS.Linux),
    Rpm("rpm", OS.Linux),
    Dmg("dmg", OS.MacOS),
    Pkg("pkg", OS.MacOS),
    Exe("exe", OS.Windows),
    Msi("msi", OS.Windows);

ここに画像の説明を挿入
最初のパッケージ化では、パッケージング ツール wix3 がダウンロードされます。ネットワーク速度が良好でない場合は、手動でダウンロードし、プロジェクト ディレクトリ \build\wixToolset に解凍します。ダウンロードアドレス: wix311-binaries.zip

コンパイルが成功した場合の出力:

build\compose\binaries\main\msi\untitled-1.0.0.msi

インストールして実行する

ここに画像の説明を挿入

依存するライブラリとランタイムはインストール ディレクトリにあります。exe を実行します。
ここに画像の説明を挿入
ボタンをクリックすると、Android にユニークな水の波紋効果が表示されます。
ここに画像の説明を挿入

質問

1 つ目は、次のプロンプトが表示された場合は、JDK が 15 以上になるように設定してください。

ネイティブ ディストリビューションをパッケージ化するには、JDK ランタイム バージョン >= 15 が必要です。
実際のバージョン: '11'
Java ホーム: C:\Program Files\Android\Android Studio\jre

次に、環境変数を変更し、必ず IDE を再起動してください。jdk が有効になっていることを確認します。

ここに画像の説明を挿入
3 つ目は、パッケージ exe は成功する可能性がありますが、単一の操作は失敗し、直接応答がありません。理由を知っている友人は、ガイドするメッセージを残すことができます。

要約する

「最適なものはありません。最適なものだけです。Android での kotlin の人気により、より多くの人が compose を選択できるようになることを願っています。このようにして、新しい言語を学ぶために Flutter を選択するのと比較して、従来の Android 開発者は着実に進歩することができます。」 Jetpack Compose がもっと便利で普及すれば、近年冷え込んでいるアプリケーション開発の分野も活性化し、将来の雇用の幅も広がると思います。

参考文献

Jetpack Compose を使用してより優れたアプリをより迅速に構築する

マルチプラットフォームの構成

https://github.com/JetBrains/compose-jb

Jetpack Compose for Desktop: マイルストーン 1 がリリースされました

Compose クロスプラットフォームを理解するための 10 の質問

従来の Java UI フレームワークに代わって、JetBrains Kotlin 宣言型 UI フレームワーク Compose Multiplatform 1.0 が正式にリリースされました

PC、Web、Android 向けの Compose マルチプラットフォームがアルファ版に参入

この記事では、KMM、Compose、Flutter の現状をすぐに理解できます。

最新版 Jetpack Compose 開発・応用ガイド (Compose 基礎原理、実戦強化)

ComposeDesktop を使用してデスクトップ側の多機能 APK ツールを開発する

Jetpack Compose Desktop デスクトップ バージョンのパッケージ化および公開アプリケーション

Jetpack Compose for Desktop の概要、

Jetpack Compose for Desktop を使用して Windows Msi インストール パッケージをパッケージ化および生成し、311 コードで終了する実行可能プログラムを実行する

おすすめ

転載: blog.csdn.net/lucky_tom/article/details/128036111