0
我是Ionic和Cordova的新手,所以我确定我缺少一些基本的东西,但是我的问题是打包的APK不能播放声音Android设备。我能得到声音的涟漪模拟器只用下面的代码罚款玩:Ionic/Cordova应用程序在模拟器中播放声音,但不在Android设备上播放声音
.controller('MainCtrl', ['$scope', function ($scope) {
$scope.playStartBell = function() {
var media = new Media('media/startBell.mp3', function() {
console.log('good');
}, function (err) {
console.log('bad: ', err);
});
media.play();
},
$scope.playStopBell = function() {
var media = new Media('media/stopBell.mp3', function() {
console.log('good');
}, function (err) {
console.log('bad: ', err);
});
media.play();
}
}])
我用科尔多瓦安装媒体插件:$cordova plugin add org.apache.cordova.media
根据this SO post,一个值必须添加到config.xml中,但我不确定如何正确执行Ionic/Cordova。
您可能需要考虑在这些函数之外创建Media对象,以便您可以缓存它们,而不是在每次执行时重新创建它们。 – 2014-09-19 11:45:04
谢谢@RaymondCamden你能否为我的建议指出正确的方向?我正在考虑将这些代码转移到可在需要时注入的服务。这段代码就是我在框架中弄脏我的手。 – binarygiant 2014-09-19 14:23:11
我甚至没有考虑过服务,只是将var x = new Media()行移到控制器的开头,然后在函数中访问x(使用更好的名称;)。 – 2014-09-19 19:19:24