Причина, по которой это происходит, заключается в том, что шаблон Phonegap Xcode использует неправильный метод UIApplication для события загрузки приложения.Начиная с iOS 4.0 и выше, Apple рекомендует использовать didFinishLaunchingWithOptions вместо applicationDidFinishLaunching, поскольку первый содержит параметры параметров, которые позволяют разработчику знать, как вызывалось приложение.Поскольку iOS 4.0 и выше поддерживает фоновую обработку, приложение, возможно, было запущено из push-уведомлений Apple и должно обрабатываться соответствующим образом.
Поэтому, чтобы решить эту проблему, вам необходимо удалить код из вашего AppDelegate.mфайл, который ссылается на applicationDidFinishLaunching и включает вместо этого следующий код:
(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Add custom code here
return [ super application:application didFinishLaunchingWithOptions:launchOptions ];
}
По какой-то причине библиотека Phonegap 0.9.3 имеет правильную реализацию didFinishLaunchingWithOptions в PhoneGapDelegate.m, но основной шаблон XCode по-прежнему ссылается на applicationDidFinishLaunching,который никогда не будет вызван.