【问题标题】:Playing local files cordova/phonegap build播放本地文件 cordova/phonegap build
【发布时间】:2018-07-19 03:37:49
【问题描述】:

我是一个新手应用程序开发人员,此刻我正在失去理智并到处寻找一个体面的解决方案(也在堆栈溢出问题上),但我一直无法找到一个有效的解决方案它已经快 2数周的不断搜索和尝试,然后回到绘图板上,似乎一切都没有按计划进行。

对于一个客户,我们正在开发一个应用程序,它应该能够流式传输 mp3 文件,但也可以下载它以便离线使用。到目前为止,我已经能够(在堆栈溢出的帮助下)制作一个执行此操作的应用程序,但是它拒绝播放下载的文件。

我使用文件传输插件将 cordova.file.dataDirectory 的文件下载到名为 music 的子目录中。

这就是麻烦的开始。

要流式传输文件,我使用以下代码:

function externSpelen(){
    var externeBron = globals.muziekServer + globals.activeTrack;
    console.log (externeBron);
    $("#audioPlayer").attr("src",externeBron);
}

歌曲立即开始播放没问题。但是,当我尝试从本地源播放文件时,它什么也没做,甚至没有给我一个错误。

function lokaalSpelen(){
    var lokaleBron = cordova.file.dataDirectory + 'muziek/' + globals.activeTrack;

    console.log (lokaleBron);
    $("#audioPlayer").attr("src",lokaleBron);
}

我 100% 确定该文件存在于给定位置,因为我一直在检查它(手动)。我还在曲目开始播放之前检查了这一点。使用这个函数。

function mp3Spelen (bestandsNaam){
    store = cordova.file.dataDirectory + 'muziek/';
    fileName = 'ap-' + bestandsNaam +'.mp3';
    globals.activeTrack = fileName
    window.resolveLocalFileSystemURL(store + fileName, lokaalSpelen, externSpelen);
}

完成点击按钮后触发的功能

<button onclick="mp3Spelen('veiligeplek')">Speel veiligeplek</button></br>

(所以点击按钮后,文件 ap-veiligeplek.mp3 应该开始播放。本地或远程)

我尝试对图像做同样的事情(下载并查看它们),出于某种原因,它们似乎工作得很好。

此时我几乎要放弃了,因为我尝试了几种解决方案。 就像使用科尔多瓦媒体插件一样,但结果相同。

我正在使用 PhoneGap Build 来构建应用程序,并且我已经包含了所有需要的插件。

任何帮助将不胜感激!

【问题讨论】:

  • 谢谢,不过我已经看到这些都准备好了。除了不知何故,代码现在似乎可以工作了。我清理了我的 js 文件,它突然开始工作:D。我会把代码留在这里供其他人使用,如果他们需要的话,他们就不会遇到我开发时遇到的同样困难
  • 很高兴它成功了。也许您可以将代码发布在答案而不是问题中 干杯

标签: javascript android ios cordova phonegap


【解决方案1】:

以某种方式清理我的 js 文件后,上面的代码开始工作。为了您的方便,我把它留在这里。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-06-16
    • 1970-01-01
    • 2012-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-24
    相关资源
    最近更新 更多