簡體   English   中英

AWS Amplify 在 Android 6 上崩潰

[英]AWS Amplify Crashes on Android 6

我正在嘗試在 android 6 上使用 AWS 放大,但應用程序在配置后 30 秒后突然崩潰並出現此錯誤。

java.lang.NoClassDefFoundError: Failed resolution of: Ljava/time/LocalDateTime;
       at com.amplifyframework.devmenu.PersistentLogger.addToLogs(PersistentLogger.java:116)
       at com.amplifyframework.devmenu.PersistentLogger.debug(PersistentLogger.java:88)
       at com.amplifyframework.logging.BroadcastLogger.debug(BroadcastLogger.java:101)
       at com.amplifyframework.analytics.pinpoint.AutoEventSubmitter.lambda$new$0$AutoEventSubmitter(AutoEventSubmitter.java:44)
       at com.amplifyframework.analytics.pinpoint.-$$Lambda$AutoEventSubmitter$kRbNZmP2XU9xJOUcrfJ3PKgcA28.run(lambda)
       at android.os.Handler.handleCallback(Handler.java:739)
       at android.os.Handler.dispatchMessage(Handler.java:95)
       at android.os.Looper.loop(Looper.java:148)
       at android.os.HandlerThread.run(HandlerThread.java:61)
    Caused by: java.lang.ClassNotFoundException: Didn't find class "java.time.LocalDateTime" on path: DexPathList[[zip file "/data/app/com.nowpay.nowpay-1/base.apk"],nativeLibraryDirectories=[/data/app/com.nowpay.nowpay-1/lib/arm, /data/app/com.nowpay.nowpay-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 com.amplifyframework.devmenu.PersistentLogger.addToLogs(PersistentLogger.java:116) 
       at com.amplifyframework.devmenu.PersistentLogger.debug(PersistentLogger.java:88) 
       at com.amplifyframework.logging.BroadcastLogger.debug(BroadcastLogger.java:101) 
       at com.amplifyframework.analytics.pinpoint.AutoEventSubmitter.lambda$new$0$AutoEventSubmitter(AutoEventSubmitter.java:44) 
       at com.amplifyframework.analytics.pinpoint.-$$Lambda$AutoEventSubmitter$kRbNZmP2XU9xJOUcrfJ3PKgcA28.run(lambda) 
       at android.os.Handler.handleCallback(Handler.java:739) 
       at android.os.Handler.dispatchMessage(Handler.java:95) 
       at android.os.Looper.loop(Looper.java:148) 
       at android.os.HandlerThread.run(HandlerThread.java:61) 
       Suppressed: java.lang.ClassNotFoundException: java.time.LocalDateTime
       at java.lang.Class.classForName(Native Method)
       at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
       at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
       at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
               ... 10 more
    Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available

這里的基本問題是應用程序試圖引用運行時不存在的 class:

java.lang.ClassNotFoundException: 沒有找到 class "java.time.LocalDateTime"

Initial runtime support for java.time.* was added to Android in API Level 26. For a period of time, java.time.* only worked on these devices.

從 Android Studio 4 開始,java.time.* API 可以在構建時“脫糖”。 使用此功能時,生成的代碼將在所有版本的 Android 上運行。 要從這種支持中受益,您必須擁有 Android Studio 4 或更高版本,並啟用“核心庫脫糖”。 有關詳細信息,請參閱文檔: https://developer.android.com/studio/write/java8-support#library-desugaring

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM