applicationWillResignActive在定位iPod Touch(第二代)iOS 4.2.1时未触发

时间:2012-03-02 18:18:18

标签: ipod ios-4.2

我有一个应用程序,它捕获applicationWillResignActive的通知以写出文件。它适用于各种设备(包括4.x iPhone),但从未使用运行iOS 4.2.1的iPod Touch(第二代)。我在函数的开头设置了断点,它们从不被触发,因此它不是特定于代码的。看起来像设备特定的奇怪的事情,但也许我需要找到一个替代方案。这是一个已知问题吗?

1 个答案:

答案 0 :(得分:0)

可能是因为iPod 2gen和iphone 3G(不是3GS)等2gen设备缺乏多任务支持。这是您的ipod将看到的最新操作系统。由于旧设备没有此支持,因此只有在收到来电或短信时才会触发此代表。按下此设备上的主页按钮时,将触发applicationWillTerminate。使用[[UIDevice currentDevice] multitaskingSupported]检测模型是否支持多任务并使用它将代码传递给applicationWillTerminate:

- (void)applicationWillTerminate:(UIApplication *)application
{
    if(![[UIDevice currentDevice] multitaskingSupported])
    { 
        //Your code here for non-multitasking devices
    }

    //Code for booth plataforms
}

希望它有所帮助。