質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Gradle

Gradleは、ビルド自動化ツールです。 ソフトウェアパッケージやドキュメント、 または実際に何か他の種類のプロジェクトの構築、テスト、公開、展開などを自動化が出来ます

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

Q&A

解決済

2回答

9564閲覧

【Android】起動時にアプリがクラッシュしてしまう

Haruto513

総合スコア52

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Gradle

Gradleは、ビルド自動化ツールです。 ソフトウェアパッケージやドキュメント、 または実際に何か他の種類のプロジェクトの構築、テスト、公開、展開などを自動化が出来ます

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

0グッド

0クリップ

投稿2020/06/18 02:05

編集2020/06/18 02:46

起きている現象

エミュレータでアプリを実行しようとすると、以下のようなエラーが出てクラッシュします。

W/et.eigyonippo_: Bad encoded_array value: Failure to verify dex file '/data/app/jp.co.appnet.appname-DQ2k2AVJQZMuDXL_MeE31Q==/base.apk': Bad encoded_value method type size 7 E/LoadedApk: Unable to instantiate appComponentFactory java.lang.ClassNotFoundException: Didn't find class "androidx.core.app.CoreComponentFactory" on path: DexPathList[[zip file "/data/app/jp.co.appnet.appname-DQ2k2AVJQZMuDXL_MeE31Q==/base.apk"],nativeLibraryDirectories=[/data/app/jp.co.appnet.appname-DQ2k2AVJQZMuDXL_MeE31Q==/lib/x86, /system/lib, /system/vendor/lib]]

試したこと

こちらのページを見ながら1.プロジェクトを閉じ、2.ウェルカム画面のリストからプロジェクトを削除し、3.プロジェクトを再度開きましたが、これでは直りませんでした。

次に、build.gradleのdependenciesに
implementation 'com.android.support:multidex:2.0.1'
を追加したところ、微妙にエラー文が変わりました。

E/AndroidRuntime: FATAL EXCEPTION: main Process: jp.co.appnet.appname, PID: 2903 java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{jp.co.appnet.appname/jp.co.appnet.appname.LoginActivity}: java.lang.ClassNotFoundException: Didn't find class "jp.co.appnet.appname.LoginActivity" on path: DexPathList[[zip file "/data/app/jp.co.appnet.appname-o6AmU9S5H0W8DuReS_8mDQ==/base.apk"],nativeLibraryDirectories=[/data/app/jp.co.appnet.appname-o6AmU9S5H0W8DuReS_8mDQ==/lib/x86, /system/lib, /system/vendor/lib]]

これは好転しているのか、それとも悪化しているのかは判断できません。
どなたか解決方法をご教示してくださると助かります。

開発環境
Windows 10
Android Studio 4.0
エミュレータのAPIレベル 28

build.gradle(プロジェクト)

gradle

1// Top-level build file where you can add configuration options common to all sub-projects/modules. 2buildscript { 3 ext.kotlin_version = "1.3.72" 4 repositories { 5 google() 6 jcenter() 7 mavenCentral() 8 } 9 dependencies { 10 classpath "com.android.tools.build:gradle:4.0.0" 11 classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" 12 13 // NOTE: Do not place your application dependencies here; they belong 14 // in the individual module build.gradle files 15 } 16} 17 18allprojects { 19 repositories { 20 google() 21 jcenter() 22 mavenCentral() 23 } 24} 25 26task clean(type: Delete) { 27 delete rootProject.buildDir 28}

build.gradle(App)

gradle

1apply plugin: 'com.android.application' 2apply plugin: 'kotlin-android' 3apply plugin: 'kotlin-android-extensions' 4 5android { 6 compileSdkVersion 29 7 buildToolsVersion "29.0.3" 8 9 defaultConfig { 10 applicationId "jp.co.appnet.appname" 11 minSdkVersion 28 12 targetSdkVersion 29 13 versionCode 1 14 versionName "1.0" 15 16 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" 17 } 18 19 buildTypes { 20 release { 21 minifyEnabled false 22 proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' 23 } 24 } 25} 26 27dependencies { 28 implementation fileTree(dir: "libs", include: ["*.jar"]) 29 implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" 30 implementation 'androidx.core:core-ktx:1.3.0' 31 implementation 'androidx.appcompat:appcompat:1.1.0' 32 implementation 'androidx.constraintlayout:constraintlayout:1.1.3' 33 implementation 'com.google:google:5' 34 implementation 'org.apache.poi:poi:4.1.2' 35 testImplementation 'junit:junit:4.12' 36 androidTestImplementation 'androidx.test.ext:junit:1.1.1' 37 androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' 38 implementation 'com.google.android.material:material:1.1.0' 39 implementation 'com.android.support:multidex:2.0.1' 40 implementation 'com.sun.mail:android-mail:1.6.0' 41 implementation 'com.sun.mail:android-activation:1.6.0' 42} 43

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="jp.co.appnet.appname"> <uses-permission android:name="android.permission.INTERNET"/> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity3" /> <activity android:name=".LoginActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".MenuActivity" /> <activity android:name=".MainActivity" /> <activity android:name=".MainActivity2" /> </application> </manifest>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

build.gradle(App)を以下のように変更したら、無事アプリが起動するようになりました。
アドバイスをくださった方、ありがとうございました!

gradle

1 2apply plugin: 'com.android.application' 3apply plugin: 'kotlin-android' 4apply plugin: 'kotlin-android-extensions' 5 6android { 7 compileSdkVersion 29 8 buildToolsVersion "29.0.3" 9 10 compileOptions { 11 sourceCompatibility JavaVersion.VERSION_1_8 12 targetCompatibility JavaVersion.VERSION_1_8 13 } 14 15 defaultConfig { 16 applicationId "jp.co.appnet.appname" 17 minSdkVersion 28 18 targetSdkVersion 29 19 versionCode 1 20 versionName "1.0" 21 22 multiDexEnabled true 23 24 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" 25 } 26 27 buildTypes { 28 release { 29 minifyEnabled false 30 proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' 31 } 32 } 33} 34 35dependencies { 36 implementation fileTree(dir: "libs", include: ["*.jar"]) 37 implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" 38 implementation 'androidx.core:core-ktx:1.3.0' 39 implementation 'androidx.appcompat:appcompat:1.1.0' 40 implementation 'androidx.constraintlayout:constraintlayout:1.1.3' 41 implementation 'com.google:google:5' 42 implementation 'org.apache.poi:poi:4.1.2' 43 testImplementation 'junit:junit:4.12' 44 androidTestImplementation 'androidx.test.ext:junit:1.1.1' 45 androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' 46 implementation 'com.google.android.material:material:1.1.0' 47// implementation 'com.android.support:multidex:2.0.1' 48 implementation 'com.sun.mail:android-mail:1.6.0' 49 implementation 'com.sun.mail:android-activation:1.6.0' 50} 51 52

投稿2020/06/18 05:06

Haruto513

総合スコア52

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

implementation 'com.android.support:multidex:2.0.1'
を一回消して、以下の2つの方法を試してみてください。

  • 方法1

proguard-rulesに以下のエントリーを追加する

-keep class androidx.core.app.CoreComponentFactory { *; }
  • 方法2

gradle.propertiesに以下のエントリーを追加する

android.enableR8=false

投稿2020/06/18 02:16

Mashiro

総合スコア654

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Haruto513

2020/06/18 02:35

試してみました。微妙にエラー文が変わりました。 ``` W/et.appname_: Unexpected CPU variant for X86 using defaults: x86 W/et.appname_: Bad encoded_array value: Failure to verify dex file '/data/app/jp.co.appnet.appname-ri6ra4F4UInGZwwAu9FT5Q==/base.apk': Bad encoded_value method type size 7 E/LoadedApk: Unable to instantiate appComponentFactory java.lang.ClassNotFoundException: Didn't find class "androidx.core.app.CoreComponentFactory" on path: DexPathList[[zip file "/data/app/jp.co.appnet.appname-ri6ra4F4UInGZwwAu9FT5Q==/base.apk"],nativeLibraryDirectories=[/data/app/jp.co.appnet.appname-ri6ra4F4UInGZwwAu9FT5Q==/lib/x86, /system/lib, /system/vendor/lib]] ```
Mashiro

2020/06/18 03:48

結局のところ、Didn't find class "androidx.core.app.CoreComponentFactory" となっていて、クラスが見つからないってエラーで起動できていないのが原因かと。 上の方法両方とも同じような感じですか?
Haruto513

2020/06/18 04:05

どちらも同じエラー文が出てきました。
Mashiro

2020/06/18 04:21

build.gradleのdefaultConfigの上に compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } のセクションと defaultConfigの中に multiDexEnabled true のエントリーを追加してみて試してもらってもいいですか?
Haruto513

2020/06/18 04:37

通りました! その通りにしてみたら、元の通りにアプリが起動し、無事に動くようになりました!
Mashiro

2020/06/18 05:07

解決してよかったです。
Haruto513

2020/06/18 06:46

御協力ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問