2011-04-09 130 views
3

不久前,我向应用程序商店发布了一个应用程序。我使用模拟器和我的iPhone 3GS进行了测试(不幸的是,我还没有iPhone 4) - 即使经常使用,如果发生任何崩溃,也很少。iPhone:应用程序在特定设备上崩溃

-

有什么不对:

一些评论认为,这是在iPhone 4(可能在启动时)崩溃 - 我也注意到这跟我的几个其他的应用程序,其中唐没有很多下载。

我没有办法调试这些崩溃 - 但是有什么可能的原因可能会导致频繁崩溃在特定的设备上(可能只是iPhone 4 - 虽然我不认为它会在iPhone 4上测试) ?我的应用程序不使用普通的框架或API方法,运行时内存很少。这些崩溃可能发生在越狱设备上吗?目前没有iTunes连接崩溃报告。

-

TLDR:应用程序崩溃,在特定的设备,不能复制它。没有想法从哪里开始 - 帮助?

-

另外:如果任何人的感情特别慷慨,想确认它是否适用于iPhone 4,那么你可以尝试我的应用程序(免费) - app store link - 我会非常感激!否则,任何特定设备可能会导致应用程序崩溃的原因将会很好,或者任何有类似经历的人 - 当我无法复制该错误时,我甚至不知道从哪里开始。

+0

请耐心等待来自iTunes连接的崩溃日志:如果它经常频繁崩溃,那么在它们开始出现之前不会超过几天。我希望在编译时保留.dsym文件,否则它们不会对你有太大的用处 – lxt 2011-04-09 08:46:50

+0

我可以再次编译它,还是需要完全一样的dsym文件? – 2011-04-09 08:53:18

+0

您需要相同的dsym文件 – Walter 2011-04-09 08:54:17

回答

4

好吧,我就找到了你的问题::-)

它的区域设置,使其崩溃 - 采用德国,它会崩溃,用美国的,它会被罚款。所以看起来像解析问题。

+0

谢谢!永远不会想到这一点。我想这可能与NSDate返回语言特定时间字符串或某事有关...现在关闭以查找错误。再次感谢:) – 2011-04-09 12:12:20

+0

LOL!做得好。怎么可能?你有没有尝试改变区域设置或什么?我的手机是美国英语(但我在瑞典),所以我想瑞典地区的设置是杀死它的。 – Kalle 2011-04-09 12:13:16

+0

嘿,我是一名专业人士。大声笑。解决方案是思考“这些设备上有什么不同” - 第一个猜测是语言,没有帮助......第二个是区域,它完成了这项工作。对于类似日历的应用程序,它总是一个很好的猜测。 :) – Eiko 2011-04-09 12:17:42

0

这是我遇到过的最愚蠢的事情。是的,部分问题是由于设备的位置,但这不是主要原因。

如果您在应用中使用NSDateFormatter,那么它就是崩溃的地方。例如在我的情况下,这是因为24小时制和12小时制。在美国格式中,默认时间格式为12小时制,时间为& pm。 在我的代码中,我试图访问从[formatter stringFromDate:date]得到的字符串的am和pm部分,并且在使用24小时系统的设备上没有访问这样的东西。所以它会使应用程序崩溃。 发生在非美国国家的NSDate的默认格式不是24小时系统。

确保在尝试访问它的任何部分之前定义NSDateFormatter的格式。