title: How to catch unhandled errors and pass them further
body: <p>My question is how to <strong>catch unhandled errors</strong> in Android application and <strong>pass them further</strong> so it <strong>will indeed crash</strong> the application. </p>
  
  <p>I'm creating SDK for Android and I still want developers to handle their errors but I also want to get informed about crashes of mine.</p>
  
  <p>I know that to catch an error I could use:</p>
  
  <pre><code>        Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
          @Override
          public void uncaughtException(Thread thread, Throwable ex) {
  
          }
      });
  </code></pre>
  
  <p>But how to pass it futher? How to crash application? If I use:</p>
  
  <pre><code>throw new RuntimeException(ex);
  </code></pre>
  
  <p>It won't crash application but rather cause <strong>ANR</strong> error.</p>
  
  <p>The second question is how does <strong>Fabric (Crashlytics)</strong> library <strong>work</strong>?
  Mind that I also don't want to spoil workflow of Fabric if it's also present in the application.</p>