2017-04-07 49 views
2

我實際上正在用Ionic 2/angular2開發一個應用程序。離子2如何播放音效

這是一個學習與SQLite數據庫一起運行的英語時態的應用程序。

我想添加一個循環播放的背景聲音。

用戶可以用quizz鍛鍊自己。我想在用戶提交答案時播放音效。

兩種不同的聲音:一個是好的,一個是壞的答案。

我已經嘗試使用Nativeaudio,角度音頻和離子音頻模塊,但每次文檔都基於javascript而不是打字稿,或者它不是有用的。

使用原生音頻播放背景聲音後,我成功了,但在它完全無法工作並且出現錯誤之後:EXCEPTION:未捕獲(承諾):指定音頻不存在引用ID。

對於其他解決方案(角度音頻和離子音頻),要麼我沒有得到如何安裝它,一旦安裝,我什麼也沒有:沒有聲音,沒有錯誤。

非常感謝您的幫助。

+0

您好,歡迎計算器!請參考如何提問:https://stackoverflow.com/help/how-to-ask如果您可以改進您的問題,這將提高有人能夠幫助您的機率! –

+0

您是否檢查此鏈接? http://ionicframework.com/docs/native/native- audio/ –

+0

嗨,是的,我沒有檢查本地音頻的離子文檔,但無法找到我正在尋找的東西。 – Guilhem

回答

7

安裝:

$ ionic plugin add --save cordova-plugin-nativeaudio 
$ npm install --save @ionic-native/native-audio 

用法:

import { NativeAudio } from '@ionic-native/native-audio'; 

constructor(private nativeAudio: NativeAudio) { } 

... 

this.nativeAudio.preloadSimple('uniqueId1', 'path/to/file.mp3').then(onSuccess, onError); 
this.nativeAudio.preloadComplex('uniqueId2', 'path/to/file2.mp3', 1, 1, 0).then(onSuccess, onError); 

this.nativeAudio.play('uniqueId1').then(onSuccess, onError); 

// can optionally pass a callback to be called when the file is done playing 
this.nativeAudio.play('uniqueId1',() => console.log('uniqueId1 is done playing')); 

參考: https://ionicframework.com/docs/native/native-audio/

+0

謝謝你的回答,現在我已經解決了使用html5音頻標籤的問題。 – Guilhem

+0

它在iOS和Android中的質量相同嗎? – Al007