title: Lazy Injection with Dagger 2 on Android
body: <p>I’m new to Dagger 2. I have this scenario, I wan't to inject an object across my app (in presenters, in api)</p>
  
  <p>I do not have a way to provide it initially. It is not created till after authentication at some stage in my app.</p>
  
  <p>From the documentation <a href="http://google.github.io/dagger/">http://google.github.io/dagger/</a></p>
  
  <p>I see Lazy loading might be a way to solve this e.g</p>
  
  <pre><code>@Inject 
  Lazy&lt;Grinder&gt; lazyGrinder;
  </code></pre>
  
  <p>and then get the value like this using: 
      lazyGrinder.get().grind();</p>
  
  <p><strong><em>My questions are:</em></strong></p>
  
  <ul>
  <li>Can I safely swap the object after this with a new one?</li>
  <li>Are there any other recommended ways to do this?</li>
  </ul>
  
  <p>Thanks</p>