There are multiple options available, some fully open source, some partly, some free, some paid.
iTunes Connect mostly doesn't work. The reasons are:
- In older iOS Versions, people needed to sync the device to iTunes, which would then upload the crash reports to iTunes Connect. But these users had to agree to "sending anonymous usage and diagnostic data" to Apple when setting up the device. Most people just don't allow that.
- In newer iOS Versions (I think it started in iOS 6) the device is sending crash reports directly to iTunes Connect. BUT also in this case, the user has to approve "sending anonymous usage and diagnostic data" when setting up the device. Most people just don't allow that again. You can check yourself if you allowed it in the Settings app under
General
, About
, then scroll down to Diagnostics & Usage
.
So the best way to get crash reports (sadly) is to include a crash reporting library into your app. Due to privacy reasons, you should allow the users to allow or deny sending the reports. Most people do allow this, since the dialogs mostly say something like anonymous data to fix the bug that caused the app to crash
and (hopefully) won't send any privacy problematic data in then too. But the magic is I think, that it doesn't say usage data
in such a global context. Never had problems in all the years not getting crash reports even though showing alerts and letting the users decide, also with an option to Always send
.
The following answer shows an overview of available crash reporting solutions: how to generate crash report using code like crash report provided by Apple