После обновления некоторых библиотек метод подписки () генерирует исключение NullPointerException, если для minifyEnabled установлено значение true. Если я удаляю minifyEnabled, то код работает нормально. В основном нулевые данные анализируются для метода подписки. Нет проблем с этим перед обновлением gradle. Кто-нибудь сталкивался с этой проблемой?
Ниже приведен код проблемы. Идентификатор будет нулевым. Опять же, это не так до обновления, и это происходит только тогда, когда minifyEnabled имеет значение true в Gradle.
DataService.INSTANCE
.getId()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(
id -> {
goToView(context, id);
},
t -> {
L.e("Exception happened", t);
}
)
Ниже приведены некоторые среды
- Android Studio v 3.5
- Gradle V5.4.1
- Плагин Gradle для Android 3.5.0
- android.useAndroidX = true
RXJava версии:
implementation "io.reactivex.rxjava2:rxjava:2.2.12
implementation "io.reactivex.rxjava2:rxandroid:2.1.1
implementation "com.jakewharton.rxbinding2:rxbinding:2.2.0
implementation "com.jakewharton.rxrelay2:rxrelay:$rootProject.ext.rx2Relay"
implementation "com.squareup.retrofit2:adapter-rxjava2:2.1.1
Gradle Config
shrinkResources true
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'