J'ai une application iPhone simple avec plusieurs sons déjà en cours de lecture. Cependant, un en particulier ne sera pas. Le bloc de code que j'ai piraté est en place:Comment déboguer pourquoi un son ne sera pas lu via AVAudioPlayer?
NSString *soundPath2 = [[NSBundle mainBundle] pathForResource:@"gameover" ofType:@"wav"];
NSURL *soundFileURL2 = [NSURL fileURLWithPath:soundPath2];
NSError *err;
AVAudioPlayer *sound2 = [[[AVAudioPlayer alloc] initWithContentsOfURL:soundFileURL2 error:&err] autorelease];
NSLog(@"Error: %@", [err description]);
NSLog(@"Duration: %f ", [sound2 duration]);
BOOL b = [sound2 play];
NSLog(@"Play Bool: %d", b);
La console affiche l'erreur est nulle, les rendements booléennes vrai, et même la durée est correcte! Pourtant, le jeu ne fait rien. Si je change de "gameover" en un autre son (un simple bip), tout va bien.
Alors que ce serait génial de le faire jouer, j'ai aussi du mal à comprendre quelles conditions d'erreur, etc. Je peux vérifier à 1) savoir qu'il a échoué et 2) pourquoi.
Le son est question est disponible à http://wdr1.com/gameover.wav.
qui l'a fait! Merci. – Bill
J'ai eu une chose étrange en utilisant A.R.C. où l'OS libérait prématurément mon objet. Cela m'a rendu fou !!! J'ai fini par sauvegarder le lecteur dans un cache (dictionnaire) pour le faire jouer. – Olie