2017-02-08 8 views
1

私はアプリを持っています。アンドロイドでアプリをインストールした場合、Android Lollipop以上で動作します。[Androidスタジオ] java.lang.RuntimeException:アクティビティをインスタンス化できません。ComponentInfo java.lang.ClassNotFoundException:パス上:DexPathList

java.lang.RuntimeException:キットカット装置、アプリケーションがクラッシュして、以下のようにエラーを表示にjava.lang.ClassNotFoundException:活性ComponentInfo {com.SplashActivity}をインスタンス化することができません「COMのクラスを見つけられませんでした。 SplashActivity ":DexPathList [[zipファイル"/data/app/comp.partner-1.apk "]、[0120] android.app.ActivityThread.performLaunchActivity(ActivityThread.j AVA:2131) android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2271) でandroid.app.ActivityThread.access $ 800(ActivityThread.java:144) でandroid.app.ActivityThread $ H.handleMessageで(ActivityThread .java:1205) android.os.Handler.dispatchMessage(Handler.java:102) (android.os.Looper.loop(Looper.java:136)) at android.app.ActivityThread.main(ActivityThread.java :5146) at java.lang.reflect.Method.invokeNative(ネイティブメソッド) at java.lang.reflect.Method.invoke(Method.java:515) at com.andro id.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:732) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:566) at dalvik.system.NativeStart.main(ネイティブメソッド) 原因:java.lang.ClassNotFoundException:パスにクラス "com.SplashActivity"が見つかりませんでした:DexPathList [[zipファイル "/data/app/com.partner-1.apk"],nativeLibraryDirectories=[/data /app-lib/com.partner-1、/ system/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) at java.lang.ClassLoader.loadClass(ClassLoader.java:497) java.lang.ClassLoader.loadClass(ClassLoader.java:457) android.app.Instrumentatio n.newActivity(Instrumentation.java:1061)android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2122)で android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2271)で android.app.ActivityThreadで 。 $ 800(ActivityThread.java:144) android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1205) (android.os.Handler.dispatchMessage(Handler.java:102)) android.os.Looper .loop(Looper.java:136) android.app.ActivityThread.main(ActivityThread.java:5146) at java.lang.reflect.Method.invokeNative(ネイティブメソッド) at java.lang.reflect.Mavod.invoke(Method.java:515) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:732) at com.android.internal.os .ZygoteInit.main dalvik.system.NativeStart.main(ネイティブメソッド)で(ZygoteInit.java:566)

私は多くのことをしようと、それを修正することができませんでした、答えのほとんどは、Eclipseプロジェクトのためのものです。ここで

[Activity(Name = "somepackage.custombuttonrenderer")] 
public class CustomButtonRenderer: ButtonRenderer 
{ } 

:私はこのように私のクラスに名前を付けることで、エラーを発見していないクラスを解決https://developer.android.com/studio/build/multidex.html

+0

をし、それが動作することを期待? – k0sh

+0

私はkitkatでも実行する必要があります。:) –

+0

私はhttp://stackoverflow.com/questions/19523167/android-classnotfoundexception-didnt-find-class-on-pathから回答を得ました。レッドマンは働きます。 –

答えて

0

のAPI 21の理由がある:このガイドから

Android 5.0 (API level 21) and higher uses a runtime called ART which natively supports loading multiple DEX files from APK files. ART performs pre-compilation at app install time which scans for classesN.dex files and compiles them into a single .oat file for execution by the Android device. Therefore, if your minSdkVersion is 21 or higher, you do not need the multidex support library. 

私の答えは:Why is my custom ButtonRenderer not working?

0

あなたはアプリレベルのブイld.gradleファイル:

implementation 'com.android.support:multidex:1.0.0' 

として、あなたのアプリケーションクラス更新:あなたが唯一の事前のデバイスで上記のアンドロイドLで動作し、アプリケーションを実行している理由

@Override 
public void onCreate() { 
    super.onCreate(); 
    MultiDex.install(this); 
} 
関連する問題