我们通常想在app启动的早期做一些事情,可能放在AppDelegate中的didFinishLaunchingWithOptions方法里是一个不错的选择:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    //some cocos2D init code...
    //我们需要的代码放在这里
    return YES;
}

在模拟器中运行这都很好,但是放到真机调试时发现,启动时代码流运行cocos2D的初始化代码后没有再回到下面我们的代码了,而是之后直接调用startScene方法.

不知道各位有没有有遇到这种情况,我的cocos2d版本为:

Cocos2D-Swift version 3.4.3-develop

不知道是否是develop版本的原因.

现在简单的解决办法是将需要运行的代码放到startScene方法中:

- (CCScene*) startScene
{
    //我们的初始化方法在这里...
    return [CCBReader loadAsScene:@"MainScene"];
}

现在无论是模拟器还是真机都可以正常运行了.

05-08 08:07