j'ai obtenu le code suivant:AVAudioPlayer via haut-parleurs
- (id)init {
if (self = [super init]) {
UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);
[[AVAudioSession sharedInstance] setDelegate:self];
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
[[AVAudioSession sharedInstance] setActive:YES error:nil];
}
return self;
}
Mais en quelque sorte le son ne veut pas sortir des haut-parleurs, quelqu'un peut voir ce que je fais mal?
Le code que j'utilise pour jouer est:
AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL:soundFilePathURL error:nil];
[player prepareToPlay];
[player setVolume:1.0];
[player play];
Votre code semble correct pour moi (je suis en utilisant tout à fait la même chose et cela fonctionne). peut-être juste vérifier que Pas d'erreur est de retour au lieu de passer nul. Erreur NSError *; [[AVAudioSession sharedInstance] setActive: erreur YES: & erreur]; pour être sûr que votre session audio est bien. – yonel