【问题标题】:iPhone Application Error SubmitiPhone应用程序错误提交
【发布时间】:2011-10-29 07:34:13
【问题描述】:

我有一个即将进入测试的应用程序,在崩溃后重新加载时,会显示一个 UIAlertView 和一个文本字段,询问应用程序崩溃时用户在做什么。

如何获取用户在 UIAlertView 文本字段中输入的内容并将其提交给我?电子邮件听起来很棒,但是他们不得不为此离开应用程序,这似乎效率低下。所以会更加无缝。

提前致谢。

【问题讨论】:

    标签: iphone objective-c xcode


    【解决方案1】:

    他们不必离开应用程序即可向您发送电子邮件。查看 MFMailComposeViewController 类。

    【讨论】:

    • 好吧,如果他们没有在手机上设置电子邮件怎么办?
    • 然后在这种情况下,Apple 在 UIAlertView 中提供了一个标准错误 - 如果您愿意,您可以自己捕获它并检查 Internet 连接,以阻止用户走这么远。编辑:如果您在此处检查接受的答案,您可以发送一封电子邮件,甚至无需让用户参与到:主题:字段等并在后台发送,请在此处查看:stackoverflow.com/questions/6284599/…
    【解决方案2】:

    不使用电子邮件的最简单方法可能是构建一个简单的 Web 服务,该服务接受包含崩溃详细信息的 HTTP POST。您的网络服务可以将这些详细信息存储在您可以根据需要访问的数据库或平面文件中。

    从 iPhone 发布到网络服务非常简单。如果您想自己编写代码,我建议您查看NSURLConnection 文档。但是,还有一种更简单的方法,如this answer 中所述:使用ASIHTTPRequest 库只需几行代码即可完成整个操作。这个来自 ASIHTTPRequest 站点的示例代码描述了如何发布一系列键和值。

    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
    [request setPostValue:@"Ben" forKey:@"first_name"];
    [request setPostValue:@"Copsey" forKey:@"last_name"];
    [request setFile:@"/Users/ben/Desktop/ben.jpg" forKey:@"photo"];
    

    至于如何编写 Web 服务,here's a good tutorial on writing a simple PHP/MySQL web service,专门针对 iOS 开发。当然,您需要一台服务器,但托管很便宜,这绝对是您收集数据的最佳方式。 (您也可以免费使用Google App Engine,但我听说过一些关于 App Engine 性能的坏消息。)

    祝你好运!

    【讨论】:

    • 该应用程序已经发布,所以我将以不同的方式重新实现该代码,并创建一个单独的服务器。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2012-09-24
    • 1970-01-01
    • 2015-06-16
    • 1970-01-01
    • 2010-12-04
    • 2015-04-16
    • 2015-11-08
    • 2011-08-22
    相关资源
    最近更新 更多