Use 3rd party libraries like BugSense(http://bugsense.com/) It offers crash reports with call stack and phone state and is very easy to use, one line only ! The only con is that your application needs to have internet access. If its offline then you need to have manual logs(write a log file on phone memory)that your users can forward to you.
Edit: Docs here - https://www.bugsense.com/docs/android