Метод подписки RXJava выбрасывает исключение NullPointerException, когда для minifyEnabled установлено значение true в gradle - PullRequest
0 голосов
/ 02 октября 2019

После обновления некоторых библиотек метод подписки () генерирует исключение 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);
             }
         )

Ниже приведены некоторые среды

  1. Android Studio v 3.5
  2. Gradle V5.4.1
  3. Плагин Gradle для Android 3.5.0
  4. 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'
...