更新后无法打开iOS应用程序
我们有一个应用程序在应用程序商店中运行了将近一年,我们收到了一些来自客户的不良评论,这些评论在更新应用程序后无法打开应用程序 用户报告在删除并随后重新安装应用程序后无法启动该应用程序。 一位用户表示,他们只能在iPhone出厂重置后才能启动该应用程序 我们认为问题与钥匙链有关,因为这似乎在系统中持续存在。因此,我们更新了用于访问密钥链的第三方库。此更改是在版本1.4.1中进行的 在发布了1.4.1之后,一些用户表示他们终于能够打开应用程序了。不幸的是,由于我们无法调试该问题,我们无法确定可能解决的问题。此外,我们还看到其他用户在升级到1.4.1和1.4.2时仍然存在同样的问题 我们还正在考虑与我们的一个附属图书馆有关的问题:更新后无法打开iOS应用程序,ios,cocoa-touch,keychain,crash-reports,sfhfkeychainutils,Ios,Cocoa Touch,Keychain,Crash Reports,Sfhfkeychainutils,我们有一个应用程序在应用程序商店中运行了将近一年,我们收到了一些来自客户的不良评论,这些评论在更新应用程序后无法打开应用程序 用户报告在删除并随后重新安装应用程序后无法启动该应用程序。 一位用户表示,他们只能在iPhone出厂重置后才能启动该应用程序 我们认为问题与钥匙链有关,因为这似乎在系统中持续存在。因此,我们更新了用于访问密钥链的第三方库。此更改是在版本1.4.1中进行的 在发布了1.4.1之后,一些用户表示他们终于能够打开应用程序了。不幸的是,由于我们无法调试该问题,我们无法确定可能解决
- Flurry分析
- Facebook iOS SDK
- 贝宝MPL
- hockeyappios库
- Asittprequest
- 我们不使用CoreData
[[BITHockeyManager sharedHockeyManager] configureWithIdentifier:QUINCY_APP_IDENTIFIER delegate:self];
[[BITHockeyManager sharedHockeyManager] setDisableUpdateManager:YES];
[[[BITHockeyManager sharedHockeyManager] crashManager] setCrashManagerStatus:BITCrashManagerStatusAutoSend];
[[BITHockeyManager sharedHockeyManager] startManager];
#ifdef DEBUG
[[BITHockeyManager sharedHockeyManager] setDebugLogEnabled:YES];
#endif
应用程序标识符在生成设置中配置,每个配置都不同。我们曾经遇到过这个问题。该应用程序作为一个临时构建运行良好。苹果公司测试并批准了它;但是,最终用户在打开时会立即崩溃 对我们来说,结果是我们没有正确地传递我们的HockeyApp生产API密钥 一旦我们得到了固定用户,我们就可以继续使用了。例如:
[[BITHockeyManager sharedHockeyManager] configureWithBetaIdentifier:@"betaKeyHere"
liveIdentifier:@"liveKeyHere"
delegate:self];
我们曾经有过这个问题。该应用程序作为一个临时构建运行良好。苹果公司测试并批准了它;但是,最终用户在打开时会立即崩溃 对我们来说,结果是我们没有正确地传递我们的HockeyApp生产API密钥 一旦我们得到了固定用户,我们就可以继续使用了。例如:
[[BITHockeyManager sharedHockeyManager] configureWithBetaIdentifier:@"betaKeyHere"
liveIdentifier:@"liveKeyHere"
delegate:self];
一般来说,启动时可能会出现多个问题:
ApplicationIDFinishLaunching:
runloop中迁移主线程上的大量数据,因此应用程序对用户输入没有响应,因此将在大约20秒后被看门狗杀死
确保在不阻塞主线程的情况下进行迁移所以要么2。或3。这是你的问题。如果您有机会直接联系受影响的用户,您可以要求提供iOS生成的崩溃报告。否则,请检查我给出的建议。一般来说,启动时可能会出现多个问题:
ApplicationIDFinishLaunching:
runloop中迁移主线程上的大量数据,因此应用程序对用户输入没有响应,因此将在大约20秒后被看门狗杀死
确保在不阻塞主线程的情况下进行迁移所以要么2。或3。这是你的问题。如果您有机会直接联系受影响的用户,您可以要求提供iOS生成的崩溃报告。否则,请检查我给出的建议。我不敢相信,但我终于找到了应用程序崩溃的原因 [[NSLocale currentLocale]objectForKey:NSLocaleCountryCode]有时返回零。 我假设这总是正确的,但显然我错了 我在这里发现了另一个问题。它应该是对这个问题采取后续行动的正确地点 感谢@kerni的建议,我能够让hockeyapp发送应用程序启动崩溃的报告,但不幸的是,这还不足以理解发生了什么:报告的堆栈跟踪不清楚 经过几次尝试,我发现了另一件与flurry有关的坏事。这是为了捕获系统异常并避免hockeyapp正确处理崩溃并生成合理的报告。 这次讨论对我识别和更正flurry集成代码非常有帮助:
在这次更改之后,我终于能够在hockeyapp上看到一个不错的崩溃报告,并确定我的问题:当前的区域设置。我不敢相信,但我终于找到了