1. ホーム
  2. アンドロイド

アクティビティクラス{パッケージ/クラス}が存在しない 原因と解決方法

2022-02-23 06:14:26

2日前、テスト機でプロジェクトをAndroid Studioでコンパイルして実行したところ、コンパイルは通ったものの、実行時にエラーが発生し、そのエラーメッセージの主な内容は以下の通りでした。

アクティビティクラス{... /MainActivity}が存在しません。

Appモジュールのbuild.gradleの設定情報を確認したところ、MainActivityは明らかに存在し、マニフェストで宣言されているので、混乱しました。

defaultConfig {
        applicationId "com.chan.example"
        minSdkVersion 15
        targetSdkVersion 19
        versionCode 146
        versionName "2.0.0.1112.0"
    }


applicationIdの値はパッケージ名と一致していますああ、ちなみにここの値は省略可能で、デフォルトはパッケージ名となります。
原因がわからなかったのですが、テストマシンに今回のアプリと同じパッケージ名の古いバージョンをインストールしていたことに気づき、アンインストールし、プロジェクトをクリーニングすることにしたら、正常に起動するようになりました。

まとめると、Activityクラス{package/class}が存在しない主な理由は、以下の通りです。

1 .build.gradleのdefaultConfigにあるapplicationIdの値がパッケージ名と一致しない。

大文字小文字を省略するか、パッケージ名と一致させてください。

2. 同じパッケージ名のアプリケーションを2つ実行したため、認識されない入力アクティビティが発生した。

現在のパッケージ名のアプリをアンインストールするか、adb shell rm /data/app/*.apk ですべての apk (Android インストーラー) をアンインストールしてください。