2017-09-19 5 views
2

をGoogleが、それは私はそれを試してみました14プロバイダandroid.arch.lifecycle.LifecycleRuntimeTrojanProvider取得できません:java.lang.ClassNotFoundExceptionが

APIまでサポートしていたにもかかわらず、私が21以下のAPIの上、このクラスが見つからないというエラーを取得していますon Androidスタジオ3.0 beta 6

09-19 17:12:39.273 2794-2794/? E/AndroidRuntime: FATAL EXCEPTION: main 
               Process: xxxx, PID: 2794 
               java.lang.RuntimeException: Unable to get provider android.arch.lifecycle.LifecycleRuntimeTrojanProvider: java.lang.ClassNotFoundException: Didn't find class "android.arch.lifecycle.LifecycleRuntimeTrojanProvider" on path: DexPathList[[zip file "/data/app/xxxx-1.apk"],nativeLibraryDirectories=[/data/app-lib/xxxx-1, /vendor/lib, /system/lib]] 
                at android.app.ActivityThread.installProvider(ActivityThread.java:4793) 
                at android.app.ActivityThread.installContentProviders(ActivityThread.java:4385) 
                at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4325) 
                at android.app.ActivityThread.access$1500(ActivityThread.java:135) 
                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256) 
                at android.os.Handler.dispatchMessage(Handler.java:102) 
                at android.os.Looper.loop(Looper.java:136) 
                at android.app.ActivityThread.main(ActivityThread.java:5017) 
                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:779) 
                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) 
                at dalvik.system.NativeStart.main(Native Method) 
                Caused by: java.lang.ClassNotFoundException: Didn't find class "android.arch.lifecycle.LifecycleRuntimeTrojanProvider" on path: DexPathList[[zip file "/data/app/xxxxx-1.apk"],nativeLibraryDirectories=[/data/app-lib/xxxxx-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) 

私は開発のためにkotlinを使用しています。私は他のソリューションを確認してきた> ext.buildToolsVersion = '26 .0.1'

-

// architecture components 
implementation "android.arch.lifecycle:runtime:$arch_version" 
implementation "android.arch.lifecycle:extensions:$arch_version" 
kapt "android.arch.lifecycle:compiler:$arch_version" 

アーチのバージョンが最新のものであるext.arch_version = '1.0.0-alpha9-1' 構築ツール無効化minifyとproguard私はすでにそれらをテストしました

 debug { 
//   applicationIdSuffix '.debug' // Remove to fix Robolectric problem 
      versionNameSuffix '-DEBUG' 
      debuggable true 
      minifyEnabled false 
      useProguard false 
      multiDexEnabled true 

答えて

1

インスタント実行を無効に私のために働いた。

+0

私は夢中になって、それは私の問題を解決しました – Arutha

+0

@Arutha興味があれば問題を開いたhttps://issuetracker.google.com/issues/66990177 – Boris

+0

インスタントランは有名ですトラブルの問題が発生していますが、既にオフになっています。 – CoolMind

0

私は同じ問題を抱えていましたが、私のアプリはapi 19デバイス(4.4)で動作しませんでした。それは、「設定」>「ビルド、実行、デプロイメント」>「インスタント実行」> Dexの問題。 、他のバージョンでmultidexをサポートするためには、この依存性を追加 - アプリケーションのGradleに、defaultConfig内部multidex

defaultConfig{ 
    .... 
    multiDexEnabled true 
} 

2イネーブル -

私はそれが

1解決するgoogle documentation on multidexに従っあなたのアプリのグラデル

compile 'com.android.support:multidex:1.0.1' 

3 - あなたがアプリケーションを拡張するクラスを持っている場合、あなたは、のアプリケーションタグ

android:name="android.support.multidex.MultiDexApplication" 

内のマニフェストファイルにこれを追加しない場合、それはMultiDexApplication

を拡張しますそれ。私のために働いた

+0

アプリケーションがすでにManifestで定義されている場合は、 'MultiDexApplication'からアプリケーションを拡張することができます。 – CoolMind

関連する問題