Ionic - Áudio Nativo de Cordova

Este plug-in é usado para adicionar sons de áudio nativos ao aplicativo Ionic.

Usando áudio nativo

Para poder usar este plugin, primeiro precisamos instalá-lo. Abra a janela do prompt de comando e adicione o plugin Cordova.

C:\Users\Username\Desktop\MyApp>cordova plugin add cordova-plugin-nativeaudio

Antes de começarmos a usar este plugin, precisaremos do arquivo de áudio. Para simplificar, vamos salvar nossoclick.mp3 arquivo dentro do js pasta, mas você pode colocá-lo onde quiser.

A próxima etapa é pré-carregar o arquivo de áudio. Existem duas opções disponíveis, que são -

  • preloadSimple - É usado para sons simples que serão reproduzidos uma vez.

  • preloadComplex - É para sons que serão reproduzidos como sons em loop ou áudio de fundo.

Adicione o seguinte código ao seu controlador para pré-carregar um arquivo de áudio. Precisamos ter certeza de que a plataforma Ionic está carregada antes de pré-carregar o arquivo de áudio.

Código do Controlador

$ionicPlatform.ready(function() {
   $cordovaNativeAudio
   .preloadSimple('click', 'js/click.mp3')
	
   .then(function (msg) {
      console.log(msg);
   }, function (error) {
      console.log(error);
   });

   $cordovaNativeAudio.preloadComplex('click', 'js/click.mp3', 1, 1)
	.then(function (msg) {
      console.log(msg);
   }, function (error) {
      console.error(error);
   });
});

No mesmo controlador, adicionaremos código para reproduzir áudio. Nosso$timeout A função irá parar e descarregar o áudio em loop após cinco segundos.

$scope.playAudio = function () {
   $cordovaNativeAudio.play('click');
};

$scope.loopAudio = function () {
   $cordovaNativeAudio.loop('click');

   $timeout(function () {
      $cordovaNativeAudio.stop('click');
      $cordovaNativeAudio.unload('click');
   }, 5000);
}

A última coisa que precisamos é criar botões para reproduzir e repetir o áudio.

Código HTML

<button class = "button" ng-click = "playAudio()">PLAY</button>

<button class = "button" ng-click = "loopAudio()">LOOP</button>

Quando tocarmos no botão play, ouviremos o som uma vez e quando tocarmos no botão loop, o som irá repetir por cinco segundos e então parar. Este plugin funciona apenas em um emulador ou dispositivo móvel.