我已经为Android ICS创建了一个示例PhoneGap应用程序。 index.html中有一个音频标签,如下所示。
<audio id="player1" controls preload><source src="media/track1.mp3" type="audio/mp3" /></audio>
我无法播放音频。我在各处看到了堆栈溢出的帖子,提到froyo发布后音频标签将正常工作。但是,我在gingerbeard和ICS中进行测试时发现它在任何地方都无法正常工作。
我已经为Android ICS创建了一个示例PhoneGap应用程序。 index.html中有一个音频标签,如下所示。
<audio id="player1" controls preload><source src="media/track1.mp3" type="audio/mp3" /></audio>
我无法播放音频。我在各处看到了堆栈溢出的帖子,提到froyo发布后音频标签将正常工作。但是,我在gingerbeard和ICS中进行测试时发现它在任何地方都无法正常工作。
由于编解码器许可问题和操作系统的实现/支持不一致,HTML5音频在不同设备/操作系统上的支持并不一致。如果您只是播放MP3文件,可以使用PhoneGap的Media类来可靠地处理这些文件,该类将在所有平台上提供一致且可靠的音频编程。
如果您想要预加载音频并具有更高级的场景,例如多声部或分层(例如视频游戏效果),则可以使用LowLatencyAudio PhoneGap本机插件。
虽然来得有点晚,但是type="audio/mp3"
是错误的,应该是type="audio/mpeg"
话虽如此,Android在播放HTML5音频方面仍然很糟糕 - 您需要在播放声音之前重置src
属性(否则它们只会播放一次),并且不支持多种文件类型(其他浏览器所需)。他们也不支持WebAudioAPI。
<audio controls="controls">
<source src="/somefile.mp3" type="audio/mpeg"></source>
<source src="/somefile.ogg" type="audio/ogg">
Your browser does not support the audio element.
</source></audio>
看起来你的mp3路径不正确。如果这个文件在SD卡上,路径应该是这样的:
file:///sdcard/media/track1.mp3