ユーザ用ツール

サイト用ツール


サイドバー

プログレス合同会社

広告

android:studio:application:app:activity

02.Activityの登録

画面遷移はJetpack Composeで行うようにしますので、空のActivityを登録します。

Activityの登録

:appモジュールにActivityを登録します。

android:studio:application:app:android-app0201.png

Activityの作成

:appモジュールの最上位で右クリック➡『新規(N)』➡『Activity』➡『Gallery…』でActivityのテンプレートを表示します。

android:studio:application:app:android-app0202.png

Activityの選択

Empty Activity』を選択します。

次へ(N)』でActivityの情報を入力します。

android:studio:application:app:android-app0203.png

Activityの情報

起動時に実行されるActivityなので『Launcher Activity』を✅します。

完了(F)』でActivityが作成されます。

Hiltへの対応

:appモジュールのMainActivityHiltEntryPointを追記します。

   :
import dagger.hilt.android.AndroidEntryPoint

@AndroidEntryPoint
class MainActivity : ComponentActivity() {
   :

2行目
importライブラリを追記します。
4行目
MainActivityclass宣言の前に@AndroidEntryPointを指定します。

ライブラリ/プラグインバージョンの最新化

Activityの登録により、バージョンカタログファイルにライブラリ/プラグインが追加されています。

追加されたライブラリ/プラグインのバージョンが古いことがありますので、最新化します。

Composite Buildへの対応

Activityの登録でapp/build.gradle.ktsに定義が追加されますが、Composite Buildに対応していませんので、定義が重複しています。

重複している定義を削除します。

plugins {
  id("build.logic.application.configure")
  alias(libs.plugins.kotlin.android)
  alias(libs.plugins.compose.compiler)
}

android {
  namespace = "jp.co.progress_llc.portal"
  defaultConfig {
    applicationId = "jp.co.progress_llc.portal"
    versionCode = 1
    versionName = "1.0"
  }
  compileOptions {
    sourceCompatibility = JavaVersion.VERSION_11
    targetCompatibility = JavaVersion.VERSION_11
  }
  kotlinOptions {
    jvmTarget = "11"
  }
  buildFeatures {
    compose = true
  }
}

dependencies {
  implementation(libs.androidx.lifecycle.runtime.ktx)
  implementation(libs.activity.compose)
  implementation(platform(libs.androidx.compose.bom))
  implementation(libs.compose.ui)
  implementation(libs.androidx.ui.graphics)
  implementation(libs.androidx.ui.tooling.preview)
  implementation(libs.compose.material)
  androidTestImplementation(platform(libs.androidx.compose.bom))
  androidTestImplementation(libs.androidx.compose.ui.test.junit4)
  debugImplementation(platform(libs.compose.bom))
  debugImplementation(libs.androidx.ui.tooling)
  debugImplementation(libs.androidx.ui.test.manifest)
}

3行目~4行目、14行目~23行目
Composite Buildで登録済なので削除します。
31行目
今回はカスタム描画やCanvasを使った画像処理を行う予定がないので削除します。
34行目~35行目、38行目
テスト用の依存ライブラリなのでテストを行うときまで削除します。
36行目
画面作成時のプレビューで必要なため追記します。
37行目
画面作成時のプレビューで必要なため残します。


更新後、『Sync Now』で内容をプロジェクトに反映させます。

この時点で、一度エミュレーターで実行してみます。

Hello Android!』がエミュレーターの端末に表示されれば問題ありません。

android/studio/application/app/activity.txt · 最終更新: by 管理者