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.

Foi útil?

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.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top