views:

65

answers:

4

Hello. I submitted my first free iPhone app to the app store and users are complaining about bugs I've never seen, nor can I reproduce. How do developers allow their users to send feedback, as well as collect bug/crash reports for their iOS apps after they've been deployed to the app store?

Thanks so much in advance for your help!

A: 

Since the rules for app submission require a website with an email address for support, this would seem to be the solution. Do you not have this?

[edit]
IIRC, crash reports can be uploaded via itunes and then submitted to you.
[/edit]

KevinDTimm
+1  A: 

The best solution is to...

First, write all your logs to a rotating file log. Then create a ViewController (maybe along with the settings screen) that has a text area where users can give a description of the bug. When the click the submit button take the current log, along with any pertinent phone information, and send it to your support email address.

sdolan
Thanks sdolan! I was hoping for some solution that involved collecting data about the users behavior, this sounds great. I also found this class "MFMailComposeViewController", would you suggest using this over a standard view controller? Also, are there any privacy concerns about collecting info about the user's phone? Do I need to inform them that I'm collecting this data? Thanks again!
BeachRunnerJoe
@BeachRunnerJoe: I wouldn't use the `MFMailComposeViewController` for this. You don't need to collect anything but a message (and maybe a from email if you don't have user logins). As far as privacy, I was talking about just getting the phone system information (OS version, etc.) which I don't see any issues with. Oh, and you're welcome :)
sdolan
That's good to know. You mentioned that you wouldn't use the MFMailComposeViewController, why is that?
BeachRunnerJoe
@BeachRunnerJoe: Check out the second sentence. :) Basically, you just don't need all of the fields the the controller provides, so I wouldn't use it. Though you could look at the examples surrounding the view controller to understand how to send out emails.
sdolan
Excellent, I was under the impression that using the MFMailComposeViewController was necessary to send emails. I'll check out the example code and apple docs surrounding this.
BeachRunnerJoe
I take that back. I would just use the `MFMailComposeViewController` and fill it with your support email (and make it uneditable) and prefill the subject and from email (if you know it) to take advantage to everything it provides. I'd also take a close look at the `PLCrashReporter` that @aegzorz mentioned to see if it fits your needs.
sdolan
+1  A: 

Take a look at PLCrashReporter for sending crash reports from your app.

MFMailComposeViewController is the only way to send email afaik.

aegzorz
That looks great, thank you! Currently, my app isn't experiencing any crashes, only functionality-crippling bugs. Obviously it's difficult to reproduce bugs from simple descriptions posted in the app store reviews. Do you know of any libraries, like PLCrashReporter, that are designed to track user behavior or should I just use the standard iOS APIs and implement these logs myself? Thanks again!
BeachRunnerJoe
For tracking user behaviour you can use something like Flurry http://www.flurry.com/
aegzorz