Comment reproduire automatiquement la vidéo HTML5 mp4 sur Android?

J'avais développé une page mobile par asp.net pour lire la vidéo mp4.

Je sais que iOS a désactivé la fonction de lecture automatique pour minimiser la bande passante utilisateur, alors comment puis-je reproduire automatiquement la vidéo HTML5 mp4 sur Android?

  • Quelles sont les étapes à suivre pour être averties par le dispositif Bluetooth Low Energy (BLE)?
  • Comment créer un fichier - y compris des dossiers - pour un chemin donné?
  • Android - Fichier .apk multiple à partir d'une base de code unique
  • Appliquer Touch Swipe sur une seule page, la page utilisée pour le chargement dynamique des données?
  • Quelles sont les fonctions ou les codes requérant l'autorisation GET_TASKS dans Android?
  • Comment créer une bibliothèque sur Github et l'utiliser à travers les dépendances de gradle dans Android Studio
  • J'avais déjà mis en jeu le code HTML5, mais ça ne marche pas.

    Voici mon code:

    <video autoplay controls id='video1' width='100%' poster='images/top_icon.png' webkitEnterFullscreen poster preload='true'> <source src='http://192.xxx.xxx.xx/XXXXVM01.mp4' type='video/mp4; codecs='avc1.42E01E, mp4a.40.2' > </video> 

    De plus, j'ai résolu le problème que l'utilisateur clique sur la superposition d'image peut lire la vidéo. Merci Karthi

    Voici le code:

     <script type="text/javascript"> $(document).ready(function() { $("#video1").bind("click", function() { var vid = $(this).get(0); if (vid.paused) { vid.play(); } else { vid.pause(); } }); }); </script> 

    Merci

    Joe

  • Android Studio - L'autocomplète XML Editor ne fonctionne pas avec les bibliothèques de support
  • Android Multitouch - Second Finger ACTION.MOVE Ignoré
  • Masquage (récolte) image dans le cadre
  • Comment obtenir la durée du flux audio et continuer la diffusion audio à partir de n'importe quel point
  • Projet Android avec Robolectric et Gradle (studio Android)
  • ViewPager avec barre d'outils et TabLayout a une hauteur incorrecte
  • 11 Solutions collect form web for “Comment reproduire automatiquement la vidéo HTML5 mp4 sur Android?”

    Je ne pense pas que la lecture automatique fonctionne sur Android, mais obtenir une vidéo à jouer peut être énormément délicat. Je suggère de donner à cet article une lecture: Making HTML5 Video fonctionne sur les téléphones Android .

    Vous pouvez ajouter les attributs «muet» et «autoplay» ensemble pour permettre la lecture automatique des périphériques Android.

    par exemple

     <video id="video" class="video" autoplay muted > 

    J'ai utilisé le code suivant:

     // get the video var video = document.querySelector('video'); // use the whole window and a *named function* window.addEventListener('touchstart', function videoStart() { video.play(); console.log('first touch'); // remove from the window and call the function we are removing this.removeEventListener('touchstart', videoStart); }); 

    Il ne semble plus y avoir de moyen de démarrer automatiquement.

    Cela fait que la première fois qu'ils touchent l'écran, la vidéo jouera. Il se supprimera également lors de la première exécution afin que vous puissiez éviter que plusieurs auditeurs ne s'ajoutent.

    Android a en fait une API pour cela! La méthode est setMediaPlaybackRequiresUserGesture () . Je l'ai retrouvé après avoir creusé un jeu vidéo automatique et beaucoup de tentative de piratage en SO. Voici un exemple de blair vanderhoof :

     package com.example.myProject; import android.os.Bundle; import org.apache.cordova.*; import android.webkit.WebSettings; public class myProject extends CordovaActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.init(); // Set by <content src="index.html" /> in config.xml super.loadUrl(Config.getStartUrl()); //super.loadUrl("file:///android_asset/www/index.html"); WebSettings ws = super.appView.getSettings(); ws.setMediaPlaybackRequiresUserGesture(false); } } 

    Dans Android 4.4 et au-dessus, vous pouvez supprimer le besoin d'un geste utilisateur tant que le composant Vidéo HTML5 vit dans votre propre WebView

     webview.setWebChromeClient(new WebChromeClient()); webview.getSettings().setMediaPlaybackRequiresUserGesture(false); 

    Pour que la vidéo soit reproduite automatiquement, vous devrez ajouter une lecture automatique à l'élément vidéo

     <video id='video' controls autoplay> <source src='http://192.xxx.xxx.xx/XXXXVM01.mp4' type='video/mp4; codecs='avc1.42E01E, mp4a.40.2' > </video> 

    L'affichage automatique ne fonctionne que pour la deuxième fois. Sur Android 4.1+, vous devez avoir un certain type d'événement utilisateur pour que le premier jeu () fonctionne. Une fois que cela s'est produit, le démarrage automatique fonctionne.

    C'est pour que l'utilisateur reconnaisse qu'ils utilisent la bande passante.

    Il y a une autre question qui répond à cela. Autostart la vidéo html5 à l'aide du navigateur Android 4

    Dans Android 4.1 et 4.2, j'utilise le code suivant.

      evt.initMouseEvent( "click", true,true,window,0,0,0,0,0,false,false,false,false,0, true ); var v = document.getElementById("video"); v.dispatchEvent(evt); 

    Où html est

      <video id="video" src="sample.mp4" poster="image.jpg" controls></video> 

    Cela fonctionne bien. Mais dans Android 4.4, cela ne fonctionne pas.

    Semblable à la réponse de KNaito, ce qui suit fait l'affaire pour moi

     function simulateClick() { var event = new MouseEvent('click', { 'view': window, 'bubbles': true, 'cancelable': true }); var cb = document.getElementById('player'); var canceled = !cb.dispatchEvent(event); if (canceled) { // A handler called preventDefault. alert("canceled"); } else { // None of the handlers called preventDefault. alert("not canceled"); } } 

    Voici un plugin pour PhoneGap qui a résolu le problème pour moi: https://build.phonegap.com/plugins/1031

    Je l'ai simplement inclus dans mon config.xml

     <video autoplay controls id='video1' width='100%' poster='images/top_icon.png' webkitEnterFullscreen poster preload='true'> <source src='http://192.xxx.xxx.xx/XXXXVM01.mp4' type='video/mp4; codecs='avc1.42E01E, mp4a.40.2' > </video> 

    Chrome l'a désactivé. https://bugs.chromium.org/p/chromium/issues/detail?id=159336 Même le jQuery play () est bloqué. Ils veulent que l'utilisateur l'initie afin que la bande passante puisse être enregistrée.

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.