title: Runtime error handling on android
body: <p>I want to make some classes that catch runtime errors on android and offers the user the option to restore the last saved instance state of the app.</p>
  
  <p>I was thinking of extending the Activity and Fragment classes and implement something that saves their state. In the meantime, another class handles every start of an activity or fragment, putting them in a stack.</p>
  
  <p>I want to catch every possible exception in the app, hopefully making errors less bothersome for the user.</p>
  
  <p>Any advice on how I should handle this?</p>
  
  <p>How would this error checking influence the performance of an app?</p>