Angularjs 爱奥尼亚-从使用cordova插件媒体录制的音频中获取文件

Angularjs 爱奥尼亚-从使用cordova插件媒体录制的音频中获取文件,angularjs,cordova,ionic-framework,phonegap-plugins,Angularjs,Cordova,Ionic Framework,Phonegap Plugins,我正在使用ionic with录制音频,我想使用将录制的音频上载到服务器,但我不知道如何从媒体获取文件。我只是试试这个: 控制器: $scope.itemOnLongPress = function (id) {; myMedia = new Media("./sound/recorded.wav"); myMedia.startRecord(); } $scope.itemOnTouchEnd = function (id)

我正在使用ionic with录制音频,我想使用将录制的音频上载到服务器,但我不知道如何从媒体获取文件。我只是试试这个:

控制器:

$scope.itemOnLongPress = function (id) {;
            myMedia = new Media("./sound/recorded.wav");
            myMedia.startRecord();
}

$scope.itemOnTouchEnd = function (id) {
    myMedia.stopRecord();
    myMedia.play();
    window.resolveLocalFileSystemURI(myMedia.src,
        // success callback; generates the FileEntry object needed to convert to Base64 string
        function (fileEntry) {
            // convert to Base64 string
            function win(file) {
                var reader = new FileReader();
                reader.onloadend = function (evt) {
                    var obj = evt.target.result; // this is your Base64 string
                    alert(obj);
                };
                reader.readAsDataURL(file);
            };
            var fail = function (evt) {};
            fileEntry.file(win, fail);
        },
        // error callback
        function () {
            alert('fail');
        }
    );
每当我从事件中得到“fail”时,我都会尝试使用一些前缀,比如:“/sdcard/recorded.wav”file:///sound/recorded.wav","documents://recorded.wav“但每次都是同样的错误


有人知道我如何获取此文件吗?

最后,我使用cordova插件(cordova file transfer)来执行此操作并获取文件,我使用:

window.requestFileSystem(LocalFileSystem.TEMPORARY,0,function(filesystem) {
   var file = filesystem.root.toUrl;
   /*and need remove file:// from path so..*/
   file = file.slice(7)
}
我希望这能帮助别人,我在这件事上浪费了很多时间