title: Android LiveData: MutableData is never on active state
body: <p>I have the following <code>ViewModel</code>:</p>
  
  <pre><code>class SignInViewModel @Inject constructor(val api: BillingApi) : ViewModel() {
      val googleApiClient: MutableLiveData&lt;GoogleApiClient&gt; = MutableLiveData()
  }
  </code></pre>
  
  <p>On my <code>Activity.onCreate(onSavedInstanceState: Bundle?)</code> I have:</p>
  
  <pre><code>override fun onCreate(savedInstanceState: Bundle?) {
      super.onCreate(savedInstanceState)
      ...
      signInViewModel = ViewModelProviders.of(this)
              .get(SignInViewModel::class.java)
  
      signInViewModel.googleApiClient.observe(this, Observer&lt;GoogleApiClient?&gt; {
          ... // here never gets trigged
      }
  </code></pre>
  
  <p>Later on my code I have <code>signInViewModel.googleApiClient.value = it</code>. At this point (which happens after a button click, so I am in a resumed state) the I expected the <code>LiveData</code> to trigger my observer, but it <strong>does not</strong>.</p>
  
  <p>While debugging I've noticed that my <code>MutableLiveData</code> is never on an <code>active</code> state.</p>
  
  <p>What am I doing wrong? Please, I know I am using a <code>GoogleApiClient</code> instance in the example and that it should be initialized with the Activity with automanage and whatnot, but this is not the issue here. I want to set it dynamically and have my observer be triggered.</p>
  
  <p><strong>Edit</strong>: adding the code that calls the setValue</p>
  
  <pre><code>signInViewModel.someMethod(this)
              .observeOn(AndroidSchedulers.mainThread())
              .subscribe(Consumer {
                  // This gets called but the observe callback does **not**
                  signInViewModel.googleApiClient.value = it
              }, errorCallback)
  </code></pre>