Звук по-прежнему воспроизводится, когда громкость iPhone полностью отключена.

То, как я сейчас проигрываю фоновую музыку и другие звуки в моем приложении, ведет себя очень странно:

  • Выключите фоновую музыку и другие звуки играют НАМНОГО громче.
  • При включенной фоновой музыке звук НАМНОГО тише.
  • Вы даже можете включить музыку на середине звука, и звук станет тише.

Самая странная часть: Когда громкость iPhone полностью убрана (приглушена), звуков не должно быть вообще. При включенной фоновой музыке, но без громкости на устройстве, он делает то, что вы ожидаете - вы не слышите музыку или звуковые эффекты. Но если фоновая музыка выключена, звуковые эффекты все равно воспроизводятся и довольно громко, даже если само устройство полностью выключено!

Вот мой код ...

Для фоновой музыки:

AVAudioPlayer *musicPlayer;

- (void)playMusic {
    if (musicPlayer == nil) {
        NSURL *musicPath = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"SongFile" ofType:@"mp3"]];
        musicPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:musicPath error:nil];
        musicPlayer.volume = 0.2f;
        musicPlayer.numberOfLoops = -1;
    }
    [musicPlayer play];
}

- (void)stopMusic {
    [musicPlayer stop];
}

Для звуков во время игры:

#import "SoundEffect.h"
SoundEffect *sounds;

- (void)playSoundWithInfo:(NSString *)sound; {
    NSString *path = [[NSBundle mainBundle] pathForResource:sound ofType:@"caf"];
    sounds = nil;
    sounds = [[SoundEffect alloc] initWithContentsOfFile:path];
    [sounds play];
}

Мы будем очень признательны за любые идеи.

10
задан TylerH 8 January 2019 в 15:08
поделиться