This situation should not be related to the so-called memory shortage, very few programs will load a large amount of content during initialization to crash, and such problems can easily be found in the development phase, so memory is less likely to cause the likelihood of a second fallback (memory is not enough to retire, usually the program took some time to switch a few pictures after the occurrence).
And the second step is in the beginning of the program, in the development, Apple audit phase is not found the biggest possibility is that this problem will only occur in the old version of the system, the old version of the model.
For many developers (especially for individual developers), all iOS versions are hard to cover for all iOS models, and Apple audits only focus on reviewing the application's operation under the new machine, the new version, and not on the old system. So this is why the second program can also pass the Apple audit.
For normal apps on new iOS, the most common reason for PST fallback on older versions of iOS is that the system dynamic link library or the framework cannot be found. This usually happens because the app refers to a dynamic library in a new operating system (or a new version of a dynamic library) or only the Framework supported by the new IOS, and does not test the old system, so when the app is running on the old system, it is not found and seconds back. The workaround is to upgrade the program after the developer discovers the problem, or to upgrade its operating system by the user itself.
There is also a common second fallback is the program in the upgrade, modified the local storage of the data structure, but the user's existing old data is not upgraded, resulting in initialization because the user data can not be read correctly and the second fallback. This kind of problem usually can be solved by simply removing the program and reinstalling it again. The downside is that the user's existing data is lost--even if a backup may not help, because the old data that is backed up is not properly upgraded. If the old data is important, then you need to contact the developer to ask for a program fix.
Another reason that has become less common is that the APP is not set up correctly. For example, there is no compile-ARMv6 version at compile time, but the settings allow the APP to run on the ARMV6 processor's machine (e.g. iphone 1, iphone 3g,ipod touch 1, 2 generation, and 3 Gen 8G). This problem in addition to waiting for developers to upgrade outside the user's own no way to solve. Of course it is best to change the new machine, and the problem is now checked out when it is submitted to the App Store, so it should be less common in the future.
There is a class of seconds to retire or use a feature in the APP will be retired, is developed using only the new version of the operating system is supported by a method, and does not have the method exists in the old system to make judgments. For example, when the program starts with Game center, and does not determine whether the user's machine supports game center, then the second is back.
The main second retreat is so many, these are based on the APP's new version of the system can run as a prerequisite.
Problems such as out-of-memory, bad_access, and so on, usually exist on both the old and new IOS, and it is not uncommon to find that the seconds that are caused by such problems are usually found in the test and audit phases.
Why apps in iOS start to flash back