Cocos2d 模板和通常的示例项目在 applicationDidFinishLaunching / application:didFinishLaunchingWithOptions: 方法中初始化 cocos openGL ES 视图和其他内容。关于最后一种方法,Apple iOS 编程指南指出:
“使用 OpenGL ES 的应用程序不应使用此方法来准备其绘图环境。相反,它们应将任何 OpenGL ES 绘图调用推迟到 applicationDidBecomeActive: 方法。”
所以,我的问题是,application:didFinishLaunchingWithOptions: 真的是初始化 cocos2d 的合适位置吗?还是我们应该在 applicationDidBecomeActive: 中这样做?
如果您认为 applicationDidBecomeActive: 是可行的方法,那么与后台执行相关的后果是什么?即当应用程序从非活动状态进入前台时,我们应该怎么做才能避免一种双重初始化?
提前致谢