更新后无法打开iOS应用 [英] iOS app cannot be opened after update

查看:150
本文介绍了更新后无法打开iOS应用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们有一个应用程序在应用程序商店中运行了将近一年,并且我们收到了来自客户的一些不良评论,这些顾客在更新应用程序后无法打开该应用程序.

We have an app live in the app store for almost an year, and we've been receiving several bad reviews from customer which cannot open the app after updating it.

用户报告他们在删除并随后重新安装应用程序后无法启动该应用程序. 一位用户确实表示只有在iPhone恢复出厂设置后,才能启动该应用程序.

Users have reported they are unable to launch the application following deleting and subsequently reinstalling the application. One user did indicate they could launch the application only following a factory reset of their iPhone.

我们认为该问题与钥匙串有关,因为这似乎在系统中一直存在.因此,我们将用于访问钥匙串的第三方库更新为 https://github.com/soffes/sskeychain .此更改是在1.4.1版中进行的.

We believed the issue was related to the Keychain, since this seems to be persistent in the system. For this reason we updated the third party library we are using to access the keychain to https://github.com/soffes/sskeychain. This change was made in version 1.4.1.

发布1.4.1之后,几个用户表示他们终于可以打开该应用程序.不幸的是,由于我们无法调试问题,因此我们无法确定可能已解决的问题.此外,我们看到其他用户在升级到1.4.1和1.4.2时仍然遇到相同的问题.

After releasing 1.4.1, a couple of users indicated they were finally able to open the app. Unfortunately, as we are unable to debug the issue we were unable to determine what possible issue might have been resolved. Furthermore, we saw other users still having the same issue upgrading to 1.4.1 and also to 1.4.2.

我们也在考虑问题可能出在我们的一个依赖库中

We are also considering the issue may be with one of our dependent libraries:

  • 浆料分析
  • Facebook iOS SDK
  • PayPal MPL
  • Hockeyapp ios lib
  • ASIHTTPRequest
  • 我们不使用CoreData

我们无法使用标准的iOS工具进行调试,我们甚至无法期望曲棍球应用向我们提供崩溃报告,因为该应用在发送前已关闭.

We are unable to debug this with the standard iOS tools and we can't even expect hockey app to provide us a crash report since the app is closed before sending it.

我们不了解这种行为,并且在从应用商店中进行更新时,我们显然无法控制该应用.删除应用程序后,是否还有任何东西可以保留?如果没有,您是否知道可能阻止打开重新安装的应用程序的任何事情?

This behaviour we do not understand, and we clearly have no control on the app while is being updated from the app store. Is there anything that persists for an application on its deletion? If not, are you aware of anything that might prevent the opening of the reinstalled app?

我们正在通过以下方式在applicationDidFinishLaunching:app委托的方法中配置hockeyapp lib:

we are configuring hockeyapp lib in applicationDidFinishLaunching: app delegate's method in this way:

[[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

应用程序标识符是在构建设置中配置的,并且每个配置都各不相同.

the app identifier is configured in the build settings and distinct per each configuration.

推荐答案

通常在启动时会发生多个问题:

In general there can be multiple issues happening on startup:

  1. 所需的库未正确链接:但这可能成为问题,因为从那时起,所有应用启动都会崩溃!

  1. A required library is not linked correctly: But this can NOT be the issue, since then all app starts would crash!

启动花费的时间太长,应用被监视程序杀死.

Startup is taking taking too long and the app is killed by the watchdog.

如果您正在做例如这可能是您的问题在applicationDidFinishLaunching: runloop中的主线程上大量数据的迁移,因此该应用程序无法响应用户输入,因此将在约20秒后被看门狗杀死.

This could be your problem if you are doing e.g. migration of a lot of data on the main thread right in the applicationDidFinishLaunching: runloop and hence the app is not responsive for user input and hence will be killed by the watchdog after about 20 seconds.

确保进行迁移时不会阻塞主线程!

Make sure to do migration without blocking the main thread!

您在启动时遇到崩溃(不是致命!).由于该应用程序在HockeyApp SDK发送崩溃之前就崩溃了,因此您将无法获取这些崩溃报告.

You are experiencing a crash (not a kill!) on startup. Since the app crashes before the HockeyApp SDK can send the crash, you won't be able to get those crash reports.

HockeyApp iOS SDK提供了一种处理这些问题的机制,请按照以下页面中给出的说明进行操作:

The HockeyApp iOS SDK provides a mechanism to handle these, follow the instructions given in the following page: http://support.hockeyapp.net/kb/how-tos-faq/how-to-handle-crashes-during-startup-on-ios

所以2或3是您的问题.如果您有机会直接联系受影响的用户,则可以要求提供iOS生成的崩溃报告.否则,请检查我给出的建议.

So either 2. or 3. are your issue. If you have a chance to directly contact a user who is affected, you could ask for the iOS generated crash report. Otherwise check the recommendations I gave.

这篇关于更新后无法打开iOS应用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆