Вы получаете эту ошибку, потому что вы использовали multiDex, но отсутствует часть реализации. Для устранения ошибки выполните следующие действия.
1) Добавить «multiDexEnabled true» в defaultconfig в файле gradle уровня приложения
android {
defaultConfig {
...
minSdkVersion 21
targetSdkVersion 28
multiDexEnabled true
}
...
}
2) Если ваш minSdkVersion меньше 21, добавьте зависимость ниже.
dependencies {
implementation 'com.android.support:multidex:1.0.3'
}
3) Использовать класс MultiDexApplication в качестве класса приложения. Существует три способа использования MultiDexApplication в качестве класса приложения
i) Просто установите класс MultiDexApplication в файле AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myapp">
<application
android:name="android.support.multidex.MultiDexApplication" >
...
</application>
</manifest>
ii) Если вы уже используете пользовательский класс приложения, тогда экстент MultiDexApplication в пользовательском классе приложения
public class MyApplication extends MultiDexApplication { ... }
iii) Если невозможно расширить MultiDexApplication, поскольку вы уже расширяете другой класс и не можете его изменить, используйте метод ниже в своем пользовательском классе приложения
public class MyApplication extends SomeOtherApplication {
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
}
Примечание. Я столкнулся с той же ошибкой и только что решил ее, расширив класс MultiDexApplication