【问题标题】:Uploading a recorded audio file using phonegap (Android)使用 phonegap (Android) 上传录制的音频文件
【发布时间】:2012-06-13 14:36:44
【问题描述】:

你好, 我是phonegap的新手。我正在尝试录制音频剪辑并将其上传到服务器。我正在使用phonegap + jquery mobile + Android。谁能告诉我一个可以通过一个小例子对我有用的好方法。基本上我有一个表单,其中有一个记录按钮,用户可以从中录制音频剪辑并发布它。所以基本上我需要在提交表单时将录制的文件上传到服务器上。我尝试了 phonegap API 的媒体和文件来录制和上传文件但无法成功。

我正在使用以下功能进行录制:

function recordAudio() {
        var src = "myrecording.mp3";
        var mediaRec = new Media(src, onSuccess, onError);
        // Record audio
        mediaRec.startRecord();

        // Stop recording after 10 sec
        var recTime = 0;
        var recInterval = setInterval(function() {
            recTime = recTime + 1;
            setAudioPosition(recTime + " sec");
            if (recTime >= 10) {
                clearInterval(recInterval);
                mediaRec.stopRecord();
            }
        }, 1000);
    }

现在我需要将这个记录的文件上传到服务器。我正在模拟器上测试。

亲切的退学 贾亚

【问题讨论】:

  • 没有太多关于您尝试了什么以及出了什么问题的信息。您是否尝试过 PhoneGap 的 FileTransfer 上传方法?他们的代码示例显示了上传图像,但 sub'ing 音频捕获应该很容易。不知道为什么需要表格。
  • 你有没有找到我们可以将音频文件上传到服务器的方法。如果是,请告诉我。我也想做同样的事情。
  • @Libby 先生,jaya 想将文件上传到服务器。现在解决问题了吗?现在给出答案,如果你有任何想法......

标签: android jquery-mobile cordova


【解决方案1】:

android 录制音频的默认位置是“mnt/sdcard/myrecording.wav” 上传,使用FileTransfer对象上传音频

var ft = new FileTransfer();
ft.upload("mnt/sdcard/myrecording.wav", "http://www.website.com/upload.php", win, fail);

【讨论】:

    【解决方案2】:

    为什么不直接试试 captureAudio 功能呢?

    function captureAudio() {
       // Launch device audio recorder
       navigator.device.capture.captureAudio(captureSuccess, captureError);
    }
    

    在这里查看:PhoneGap Doc

    在 captureSuccess 回调下,您可以使用 FileTransfer 对象上传您的文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-20
      • 1970-01-01
      相关资源
      最近更新 更多