我尝试使用haxe(openfl)进行黑莓开发。 我测试了PlayingSound样本 - 它的工作原理。 但是当我尝试从网址加载声音时 - 不起作用。
这是我的代码:
public function PlaySong(url:String):Void{
var _url:URLRequest = new URLRequest(url);
if (_soundChannel != null) _soundChannel.stop();
_song = new Sound();
_song.load(_url); //<--Do not work
//_song = Assets.getSound("assets/stars.mp3"); <--work
_soundChannel =_song.play(0);
}
在flash目标中,此代码正在从网址播放我的声音,但是当我将应用程序部署到我的设备时 - 它没有声音。在设备上,只有从资产文件夹加载声音才能正确播放声音。 另外,我看到soundChannel位置始终为0(在设备上);
我首先尝试用加载器加载声音,然后在加载完成时播放它,但它也没有帮助我。
请帮帮我。
PS抱歉我的英文。
答案 0 :(得分:0)
您是否尝试使用此方法加载它:
var loader:URLLoader = URLLoader(new URLRequest("url"));
loader.data = DataFormat.BINARY;
然后尝试
loader.addEventListener(Event.COMPLETE, onComplete);
function onComplete(e:Event):Void
{
sound.loadCompressedDataFromByteArray(e.data.content)
}
首先尝试加载字节,然后从中创建声音。 无论如何,如果您的代码适用于其他移动设备(可能是模拟器),那么请在此处创建新问题: https://github.com/openfl/openfl