多くの画像をキャッシュにロードしていますが、これまでシミュレーションでうまく機能し、デバイスで試してみました - iPad2 で、デフォルトの画面の後にすべてのスプライトをキャッシュにロードするとクラッシュします。起動前でもアプリがクラッシュします。
だから、バックグラウンドでロードしようとしましたが、今はクラッシュしませんが、どういうわけか、キャッシュにロードした画像の代わりに黒い四角形が表示されます。とにかくロードされていない可能性があります.
これは最初のクラスの init メソッドにあります:
[self performSelectorInBackground:@selector(loadSpriteFrames) withObject:nil];
//よりも
-(void)loadSpriteFrames
{
//pre load effects
[[SimpleAudioEngine sharedEngine] preloadEffect:@"badEffect.mp3"];
[[SimpleAudioEngine sharedEngine] preloadEffect:@"heartEffect.mp3"];
[[SimpleAudioEngine sharedEngine] preloadEffect:@"rewardBig.mp3"];
[[SimpleAudioEngine sharedEngine] preloadBackgroundMusic:@"backgroundTraffic.mp3"];
//preload images needed for animations
[[CCTextureCache sharedTextureCache] addImage:@"stopAnim.png"];
[[CCTextureCache sharedTextureCache] addImage:@"shAnim.png"];
[[CCTextureCache sharedTextureCache] addImage:@"happyAnim.png"];
[[CCTextureCache sharedTextureCache] addImage:@"grumpyAnim.png"];
NSLog(@"*****2"); //do log
}