こんにちはみんな私のアプリケーションは昨日まですべて正常に動作していました、私は昨日私のSDKを更新しました、そしてそれは最初にエラーを出し始めましたそれはエラーを出しました
値v24でリソースが見つかりません..。
このようなものを検索して、build.gradleの次の行を変更して解決しました
compileSdkVersion 25
buildToolsVersion '25.0.2'
エラーがなくなり、完全に正常に実行されていますより高いAndroidバージョン7.1.1ですが、実行するとin下位バージョン of Android次のようになりますエラー
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.wowio.ebookreader, PID: 15469
Java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.wowio.ebookreader/com.eminosoft.ebookread.activity.SplashScreenActivity}: Java.lang.ClassNotFoundException: Didn't find class "com.eminosoft.ebookread.activity.SplashScreenActivity" on path: DexPathList[[Zip file "/data/app/com.wowio.ebookreader-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.wowio.ebookreader-1, /vendor/lib, /system/lib]]
at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2195)
at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2378)
at Android.app.ActivityThread.access$800(ActivityThread.Java:155)
at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1244)
at Android.os.Handler.dispatchMessage(Handler.Java:102)
at Android.os.Looper.loop(Looper.Java:136)
at Android.app.ActivityThread.main(ActivityThread.Java:5433)
at Java.lang.reflect.Method.invokeNative(Native Method)
at Java.lang.reflect.Method.invoke(Method.Java:515)
at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:1268)
at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:1084)
at dalvik.system.NativeStart.main(Native Method)
Caused by: Java.lang.ClassNotFoundException: Didn't find class "com.eminosoft.ebookread.activity.SplashScreenActivity" on path: DexPathList[[Zip file "/data/app/com.wowio.ebookreader-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.wowio.ebookreader-1, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.Java:56)
at Java.lang.ClassLoader.loadClass(ClassLoader.Java:497)
at Java.lang.ClassLoader.loadClass(ClassLoader.Java:457)
at Android.app.Instrumentation.newActivity(Instrumentation.Java:1068)
at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2186)
at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2378)
at Android.app.ActivityThread.access$800(ActivityThread.Java:155)
at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1244)
at Android.os.Handler.dispatchMessage(Handler.Java:102)
at Android.os.Looper.loop(Looper.Java:136)
at Android.app.ActivityThread.main(ActivityThread.Java:5433)
at Java.lang.reflect.Method.invokeNative(Native Method)
at Java.lang.reflect.Method.invoke(Method.Java:515)
at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:1268)
at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:1084)
at dalvik.system.NativeStart.main(Native Method)
私はすでに試した以下のことをしている
1.クリーンプロジェクト
2.キャッシュの無効化/再起動
3.デバイス上のアプリの削除
すでにこれらの質問を見ました 質問1 、 質問2 何も機能しませんでした。この問題を修正するにはどうすればよいですか?
あなたが何かを必要とするならば、私は問題でそれを更新します
私のbuild.gradleファイル
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 25
buildToolsVersion '25.0.2'
defaultConfig {
applicationId "com.wowio.ebookreader"
minSdkVersion 14
targetSdkVersion 23
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
}
}
dexOptions {
javaMaxHeapSize "4g"
}
}
dependencies {
compile 'com.Android.support:appcompat-v7:+'
compile 'com.google.Android.gms:play-services:+'
compile 'com.Android.support:multidex:1.0.1'
// the are many more dependencies i removed to decrease size
}
以下のようにクラスEnableMultiDex
を記述します
public class EnableMultiDex extends MultiDexApplication {
private static EnableMultiDex enableMultiDex;
public static Context context;
public EnableMultiDex(){
enableMultiDex=this;
}
public static EnableMultiDex getEnableMultiDexApp() {
return enableMultiDex;
}
@Override
public void onCreate() {
super.onCreate();
context = getApplicationContext();
}
}
とAndroidManifest.xml
このクラスをApplicationタグ内に記述します
<application
Android:name="YourPakageName.EnableMultiDex"
Android:hardwareAccelerated="true"
Android:icon="@drawable/launch_logo"
Android:label="@string/app_name"
Android:largeHeap="true"
tools:node="replace">
はい、上記の答えかもしれませんが正解です。しかし、私は反対の方法で解決しました。「Android studio」の設定でインスタント実行オプションを削除します」
->ファイルメニュー->設定の選択->ビルド、実行、デプロイメントの選択->インスタント実行の選択->「インスタント実行の有効化」のチェックを外します。
それは私のために働いた。しかし、グーグルマップ統合アプリのようないくつかのアプリケーションはインスタント実行を必要としました。
私の場合、私のプロジェクトは次の後に再び機能し始めました。
Output\apkフォルダー内に作成されたデバッグapkをインストールしたため、同じエラーが発生しました。これは、おそらくインスタント実行の結果であるため、小さくなり、クラスが欠落しています。したがって、インスタントランをオフにする代わりに、APKをビルドして(メニューの[ビルド]-> [apkをビルド])、これを使用します。
私のために働いたインスタント実行を無効にするこの問題は、インストール実行でビルドするときに一部のクラスが欠落しているために発生すると思います(apkサイズを減らします)