Bonjour,
Je commence à être pas mal désespéré de Cordova, la plupart des exemples données sur la DOC ne fonctionne pas, d'ailleurs à chaque fois que je teste une fonctionnalité elle ne marche pas. Aujourd’hui je cherche à jouer de la musique avec Cordova, j'ai pas mal chercher sur internet, mais encore une fois aucun exemple ne marche. Je teste sur un téléphone physique (NEXUS 4). Le fichier javascript "cordova.js" est bien lié à mon fichier HTML, et les permissions pour le plugin "Media" sont bien ajoutées au fichier config.xml et AndroidManifest.xml. Le son de mon téléphone est bien monté (évidemment :)). Voici le code testé (tiré de la doc) : (j'ai aussi testé avec un fichier mp3 local ça marche pas plus).
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Media Example</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for Cordova to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// Cordova is ready
//
function onDeviceReady() {
playAudio("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3");
}
// Audio player
//
var my_media = null;
var mediaTimer = null;
// Play audio
//
function playAudio(src) {
// Create Media object from src
my_media = new Media(src, onSuccess, onError);
// Play audio
my_media.play();
// Update my_media position every second
if (mediaTimer == null) {
mediaTimer = setInterval(function() {
// get my_media position
my_media.getCurrentPosition(
// success callback
function(position) {
if (position > -1) {
setAudioPosition((position) + " sec");
}
},
// error callback
function(e) {
console.log("Error getting pos=" + e);
setAudioPosition("Error: " + e);
}
);
}, 1000);
}
}
// Pause audio
//
function pauseAudio() {
if (my_media) {
my_media.pause();
}
}
// Stop audio
//
function stopAudio() {
if (my_media) {
my_media.stop();
}
clearInterval(mediaTimer);
mediaTimer = null;
}
// onSuccess Callback
//
function onSuccess() {
console.log("playAudio():Audio Success");
}
// onError Callback
//
function onError(error) {
alert('code: ' + error.code + '\n' +
'message: ' + error.message + '\n');
}
// Set audio position
//
function setAudioPosition(position) {
document.getElementById('audio_position').innerHTML = position;
}
</script>
</head>
<body>
<a href="#" class="btn large" onclick="playAudio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');">Play Audio</a>
<a href="#" class="btn large" onclick="pauseAudio();">Pause Playing Audio</a>
<a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
<p id="audio_position"></p>
</body>
</html>
Salut ! Je suis dans le même cas que toi. J'ai bien fouillé sur internet et je ne trouve pas encore de réponse la dessus.
Salut !
Désolé de déterrer le sujet. Mais je cherche aussi à jouer un fichier mp3 (moi c'est en local) et je galère à trouver une solution malgré des recherches de fou.
Tu as trouvé depuis stp :) ?
Merci d'avance mes potentiels sauveurs !!
Non je n'avais pas trouvé de solution au moment ou je cherchais, peut-être que maintenant les choses sont différentes, je ne sais pas. Désolé :')
OK Merci beaucoup pour ta réponse ! Mais t'as fait comment ? Finalement t'as abandonné ou t'as trouvé une alternative ? :x
Mais t'as fait comment ? Finalement t'as abandonné ou t'as trouvé une alternative ? :x
Vu sa réponse, il n'a pas persisté dans sa recherche et est passé à autre chose, il n'a donc pas de solution à te proposer actuellement.