Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android API 19上的懒惰导致应用程序崩溃_Android_Kotlin_Gradle_Singleton_Lazy Initialization - Fatal编程技术网

Android API 19上的懒惰导致应用程序崩溃

Android API 19上的懒惰导致应用程序崩溃,android,kotlin,gradle,singleton,lazy-initialization,Android,Kotlin,Gradle,Singleton,Lazy Initialization,我在我的应用程序中使用单例对象,并从Applicationclass为其提供上下文。 我使用lazy{}delegate为setSharedReferences字段使用。它在API 21及更高版本上工作,但在API 19上,我有一个NoClassDefFoundError: 08-04 16:20:24.075 5576-5576/ru.maxim.barybians E/AndroidRuntime: FATAL EXCEPTION: main Process: ru.maxim.ba

我在我的应用程序中使用单例对象,并从
Application
class为其提供上下文。 我使用lazy{}delegate为set
SharedReferences
字段使用
。它在API 21及更高版本上工作,但在API 19上,我有一个
NoClassDefFoundError

08-04 16:20:24.075 5576-5576/ru.maxim.barybians E/AndroidRuntime: FATAL EXCEPTION: main
    Process: ru.maxim.barybians, PID: 5576
    java.lang.NoClassDefFoundError: ru.maxim.barybians.repository.local.PreferencesManager$sharedPreferences$2
        at ru.maxim.barybians.repository.local.PreferencesManager.<clinit>(PreferencesManager.kt:15)
        at ru.maxim.barybians.App.onCreate(App.kt:14)
        at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4344)
        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)
应用程序类

类应用程序:应用程序(){ 重写fun onCreate(){ super.onCreate() PreferencesManager.context=applicationContext }
更改Gradle版本或使缓存无效对我不起作用。
我将非常感谢对解决方案的任何帮助。应用程序崩溃是因为类
App
继承自
Application
。在我将其更改为
MultiDexApplication
后,应用程序开始正常工作

class应用程序:多索引应用程序()

object PreferencesManager {
    
    lateinit var context: Context
    private val sharedPreferences: SharedPreferences by lazy { PreferenceManager.getDefaultSharedPreferences(context) }
compileSdkVersion 29
buildToolsVersion "29.0.0"
minSdkVersion 19
targetSdkVersion 29
kotlin_version = '1.3.72'
Gradle Version = 6.1.1
Gradle Plugin Version = 4.0.1