如何查找并修复崩溃原因
我向应用商店提交了一个应用,但由于以下原因,该应用被拒绝了:
I submited an app to the app store and it was rejected due to:
",我们发现您的应用在运行iOS 6.1.2的iPhone 5上崩溃,这不符合《 App Store审查指南》.
"We found that your app crashed on iPhone 5 running iOS 6.1.2, which is not in compliance with the App Store Review Guidelines.
在以下情况下,您的应用程序崩溃了:
Your app crashed when we:
当用户点击以登录应用程序时,将导致崩溃.
when the user taps to sign into the app, a crash is produced.
这是在您使用应用程序时发生的:
This occurred when your app was used:
- 在Wi-Fi上
- 在蜂窝网络上
如果您的应用使用了过多的内存,则可能会遇到此问题.要了解有关iOS内存使用情况以及如何跟踪内存使用情况和泄漏的更多信息,请参阅内存使用情况性能指南".
Your app may encounter this issue if it is using too much memory. To learn more about iOS memory usage and how to track memory usage and leaks, please see the Memory Usage Performance Guidelines."
我无法再次触发撞车事故.我使用分配工具对应用程序进行了性能分析,发现我的活动字节从未超过12MB.使用泄漏工具,我发现我有一些泄漏(所有泄漏都来自第三方),但是泄漏很小,不应导致应用程序崩溃..我不知道该怎么办..
I couldn't trigger the crash again on my side. I profiled my app with the allocations instrument, and saw that that my live bytes never exceeded 12MB. With the leaks instrument I figured out that I have a few leaks (all in 3rd party sources), but they are very minor and shouldn't have cause the app to crash.. I have no clue what to do..
- 应用程序真的因为使用过多的内存而崩溃了吗?
- 还有其他原因吗?
- 我应该如何处理并解决问题?
编辑-附上崩溃日志
查看此& 那,似乎使用ASIHTTPRequest框架导致崩溃的原因有些,但仅在临时或发行版本的构建,这使得调试它更加麻烦. 这真的是原因吗?我应该改为使用AFNetworking吗?
Check out this&that, it seems like using ASIHTTPRequest framework is causing the crash some how, but only on ad-hoc or distribution builds, which makes debugging it more of a headache. Is it really the cause? Should I switch to AFNetworking instead?
是的,您应该切换到AFNetworking,因为不再支持ASIHTTPRequest.
Yes, you should switch to AFNetworking, because ASIHTTPRequest is not supported any more.
要调试此问题,请尝试将 Optimization Level 设置为最快的Smalles [-Os] .这通常是导致调试和发布代码的行为不同的原因.
To debug this issue, try to set Optimization Level to Fastest, Smalles [-Os]. This is usually the reason, why debug and release code behaves differently.