Этот вопрос относится к Android и жизненным циклам.
Раньше у меня была серия предметов и подписывалась на них при создании.
После уничтожения я отмечал бы все предметы как завершенные, предполагая, что он удаляет всех подписчиков.
В Android Studio 3.1 я получаю предупреждения для любого абонента, который "не используется". Решение состоит в том, чтобы добавить их в «устранимый одноразовый», который я затем утилизирую при уничтожении.
Является ли «составной одноразовый» все, что мне нужно, чтобы правильно отменить запросы при уничтожении? Сделал ли мой предыдущий способ пометки предметов как завершенный что-то и нужно ли это в этом случае?
В качестве примера кода:
val observable: PublishSubject<Int> = PublishSubject.create()
val disposable = observable.subscribe { /* subscription */ }
fun onDestroy() {
observable.onComplete() // is this line necessary or helpful?
disposable.dispose()
}