AudiosServicesPlaySystemSound não funcionando no dispositivo iPad
-
26-09-2019 - |
Pergunta
Estou nos estágios iniciais do desenvolvimento do meu primeiro aplicativo para iPad e, por simplicidade, até agora usei o AudiosServicesPlaySystemSound e as funções associadas para reproduzir sons. Meu código é baseado na classe de efeito sonoro do exemplo do metrônomo da Apple.
O sintoma específico é que eu posso ouvir os sons no simulador, mas não no dispositivo, embora tenha verificado que posso ouvir sons em outros aplicativos no dispositivo. O AudiosServicesCreatesystemSoundID está retornando identificadores de som válidos, por isso não é nada tão simples quanto o nome do arquivo de som com casos diferentes, ou seja, "Sound.mp3" vs. "Sound.mp3".
Reconheço que posso precisar mudar para uma biblioteca diferente, como o Open por razões não relacionadas, mas gostaria de saber o que está acontecendo aqui. Alguém tem alguma sugestão? Existe uma função que eu possa ligar para obter um valor de Osstatus ou algo assim?
* Bump - eu tenho trabalhado em outros projetos nas últimas semanas, mas estou de volta agora e eu realmente aprecio uma resposta. Obrigado.
Solução
Eu não acho que você pode reproduzir um arquivo mp3 no dispositivo usando AudioServicesPlaySystemSound
. Dê uma olhada no documentação Para tipos de arquivo suportados. Não sei por que eles jogam corretamente no simulador, mas tive o mesmo problema. Tente usar o Avaudioplayer:
NSError *error;
AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[[NSBundle mainBundle] URLForResource: @"sound" withExtension: @"mp3"] error:&error];
if (error) {
NSLog(@"Error creating audio player: %@", [error userInfo]);
} else {
[audioPlayer play];
}
[audioPlayer release];
Outras dicas
Eu me deparei com essa pergunta por meio de uma pesquisa no Google. Meu problema é exatamente como declarado no título desta pergunta: "AudiosServicesPlaySystemSound não funcionando no dispositivo iPad". No entanto, a descrição do problema é diferente.
Simplificando, depois de atualizar meu iPad para o iOS 4.3, o AudiosServicesPlaySystemSound parou de funcionar.
Finalmente encontrei a solução para minha versão do problema, então espero que isso ajude outra pessoa.
Vá para o aplicativo Configurações no iPad e escolha Geral. Tap sons. Certifique -se de que "altere com botões" esteja definido. Isso resolverá o problema.