解決するlang.invoke.SerializedLambda問題

7104 ワード

問題の表現

  • はAndroid 7(Android Nougat)以下に
  • が現れる.
  • エラーのクラッシュログ情報は、次の
  • です.
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    Caused by: java.lang.ClassNotFoundException: Didn't find class "java.lang.invoke.SerializedLambda" on path: DexPathList[[dex file "/data/user/0/com.example/.00000000000/A3AEECD8.dex", zip file "/data/app/com.example-1/base.apk"],nativeLibraryDirectories=[/data/app/com.example-1/lib/arm, /data/app/com.example-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
    at libcore.reflect.InternalNames.getClass(InternalNames.java:53)
    at java.lang.Class.getDexCacheType(Class.java:476)
    at java.lang.reflect.AbstractMethod.getParameterTypes(AbstractMethod.java:166)
    at java.lang.reflect.Method.getParameterTypes(Method.java:170)
    at java.lang.Class.getDeclaredMethods(Class.java:673)
    

    解決策


    プロジェクトのgradle.propertiesファイルに次の行を追加します.
    1
    
    android.enableD8.desugaring=false