三星S3(及其他)的phonegap / cordova音频问题

时间:2017-03-21 05:19:42

标签: cordova audio phonegap-build html5-audio samsung-mobile

我最近发布了一个带有声音的Phonegap / Cordova应用程序。它适用于大多数手机。然而,有人抱怨说几部手机没有播放声音。我发现其中一个型号是三星S3。 我设法创建了一个简化的应用程序,它演示了这个问题:

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8" />
    <title>Hello World</title>
    <script type="text/javascript" src="cordova.js"></script>

</head>
<body>
<h1 id="ogg">OGG</h1>
<h1 id="wav">WAV</h1>
<h1 id="mp3">MP3</h1>

<script>
  var ogg = document.getElementById("ogg"),
      oggSound = new Audio('bark04.ogg'),
      wav = document.getElementById("wav"),
      wavSound = new Audio('bark04.wav'),
      mp3 = document.getElementById("mp3"),
      mp3Sound = new Audio('bark04.mp3');

      ogg.onclick = function(){
        console.log("Start ogg");
        oggSound.play();
        console.log("Done ogg");
      }
      wav.onclick = function(){
        console.log("Start wav");
        wavSound.play();
        console.log("Done wav");
      }
      mp3.onclick = function(){
        console.log("Start mp3");
        oggSound.play();
        console.log("Done mp3");
      }
</script>
</body>

</html>

这里有几点说明:

  • 当我使用Android浏览器查看页面时,此代码很有效。只有当我使用Phonegap 6.4.6 / Cordova 6.5.0进行编译时,才会出现问题。
  • 此代码适用于多款手机,包括Samsung S5
  • 使用android“about:inspect”,我看到所有console.log输出都出现了,并且没有错误。
  • 这两个mp3 / ogg文件都是使用同一个wav中的Audacity创建的。两者都有点短。我想不出任何有效的文件格式。 在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我得到了一个不那么令人满意的解决方案。我发现用crosswalk插件安装phonegap解决了这个问题。这不是一个很好的解决方案,因为它需要2个更大的APK,但是现在 - 这是我得到的最好的......我会接受它。