Phonegap API Médias - Enregistrer et lire de l'Audio - Android

Je suis l'espoir d'enregistrer de l'audio et ensuite avoir la possibilité de le lire. Il est important pour moi d'être en mesure de personnaliser le dossier de l'interface.

Dans l'exemple ci-dessous après l'enregistrement-je obtenir une durée de -1 et aucun son n'est joué.

L'étape 1.
Ajouté Media Plugin

cordova plugin add org.apache.cordova.media

L'étape 2. Mon Code

Note src est "amr" comme l'a demandé de docs.

Les appareils Android enregistrer de l'audio dans Adaptive Multi-rate format. L'
fichier spécifié doit se terminer par un .amr extension.

Cependant, "myrecording.amr" n'existe pas dans mon fichier de structure que je suis en espérant qu'il sera créé.

Javascript

var data = {
  rec: ""
};
$scope.record = function(){
    console.log('record');
    var src = "myrecording.amr";
    data.rec = new Media(src,
    function() {
      console.log("recordAudio():Audio Success");
    },

    function(err) {
      console.log("recordAudio():Audio Error: "+ err.code);
    });

    data.rec.startRecord();
}

$scope.stopRecording = function(){
    console.log('stop');
    data.rec.stopRecord();
}

$scope.playRecording = function(){
    console.log('play');
    data.rec.play();
}

$scope.logDuration = function(){
    console.log(data.rec.getDuration());
}

HTML

<button ng-click="record()">Record</button>
<button ng-click="stopRecording()">Stop Record</button>
<button ng-click="playRecording()">Play Record</button>
<button ng-click="logDuration()">Log Duration</button>

De Sortie À Partir De Ci-Dessus

Aucun son n'est joué, quand je clique sur jouer.

0     999846   log      record
1     001845   log      stop
2     002000   log      recordAudio():Audio Success
3     004657   log      play
4     008989   log      -1

Toute aide serait grandement appréciée. Laissez-moi savoir si je peux répondre à toutes les questions.

OriginalL'auteur Daniel Rasmuson | 2014-10-23