Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

342
Views
Cannot set non-nullable LiveData value to null

The error from the title is returned for the following code, which makes no sense

private val _error = MutableLiveData<String?>()
val error: LiveData<String?> get() = _error


_error.postValue(null)  //Error Cannot set non-nullable LiveData value to null [NullSafeMutableLiveData]

parameter String of _error is obviously nullable, am I doing something wrong?

over 4 years ago · Hanz Gallego
4 answers
Answer question

0

This has been fixed in version 2.3.1.

https://developer.android.com/jetpack/androidx/releases/lifecycle#version_231_2

over 4 years ago · Hanz Gallego Report

0

This appears to be related to a bug already reported against androidx.lifecycle pre-release of 2.3.0 https://issuetracker.google.com/issues/169249668.

Workarounds I have found:

  1. turn off or reduce severity of NullSafeMutableLiveData in

build.gradle

android {
  ...
  lintOptions {
    disable 'NullSafeMutableLiveData'
  }
}

or lint.xml in root dir

<?xml version="1.0" encoding="UTF-8"?>
<lint>
    <issue id="NullSafeMutableLiveData" severity="warning" />
</lint>
  1. Do the work for MutableLiveData encapsulation via backing properties dance (which really hurts my eyes).
class ExampleViewModel : ViewModel() {

    private val _data1 = MutableLiveData<Int>()
    val data1: LiveData<Int> = _data1

    private val _data2 = MutableLiveData<Int?>()
    val data2: LiveData<Int?> = _data2

    fun funct() {
        _data1.value = 1
        _data2.value = null
    }
}
over 4 years ago · Hanz Gallego Report

0

It seems fixed in lifecycle 2.4.0-SNAPSHOT. Please wait for the official release.

over 4 years ago · Hanz Gallego Report

0

This issue was coming in 2.3.0 also but after upgrading to 2.4.0 it is not coming.

over 4 years ago · Hanz Gallego Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!