• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Youtube-Video startet nicht auf Smartphone

Hallo,
ich habe gestern Abend die API von Youtube benutzt, um ein Video einzubinden. API deshalb, weil mich von Youtube nur die Musik interessiert und ich ein eigenes Video habe; wenn dieses gestartet wird, soll auch das eingebettete Video von Youtube mit der Musik starten. Funktioniert auf dem Desktop-PC einwandfrei, aber auf dem Smartphone (Samsung Ace 3) startet das Youtube-Video nicht. Es ist ja so, dass das Autoplay dort geblockt ist, aber gilt dies generell für skriptgesteuertes Starten? Oder warum funktioniert es sonst nicht?
Echinopsis-Hybride Riptide
Alert vor dem Starten kommt.
Viele Grüße - Ulrich
 
Soweit ich weiß, benutzt YouTube by default immernoch Flash als Träger, welches seit längerem auf Smartphones nicht oder nicht in der neuesten Version funktioniert.
 
Bitte sehr:
Code:
                var meplayer;
                var touch;
                touch = ('ontouchstart' in document.documentElement);
                // Callback for Youtube-player ready
                function onPlayerReady() {
                    // Create Medielement-Player
                    meplayer = new MediaElementPlayer("#video_riptide",
                     { autoRewind: false,
                         success: function (mediaElement, domObject) {
                             mediaElement.addEventListener('play', function (e) {
                                 // Start Youtube-player
                                 if (touch) ytplayer.playVideo();
                             });
                         }
                     });
                    // Start Mediaelement-player
                    meplayer.pause();
                    meplayer.play();
                }
                // Include javascript for Youtube-player
                var tag = document.createElement('script');
                tag.src = "https://www.youtube.com/iframe_api";
                var firstScriptTag = document.getElementsByTagName('script')[0];
                firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
                var ytplayer;
                var hytplayer;
                if (touch) hytplayer = 180; else hytplayer = 40;
                // Create Youtube-player
                function onYouTubeIframeAPIReady() {
                    ytplayer = new YT.Player('ytplayer', {
                        height: hytplayer,
                        width: '240',
                        videoId: 'iMyo8I8AKmY',
                        events: { 'onReady': onPlayerReady }
                    });
                }
Inzwischen habe ich jedoch gelernt, dass das automatische Abspielen von Multimedia-Inhalten auf mobilen Geräten geblockt ist, um den Benutzer vor den Gebühren bei ungewolltem Herunterladen zu schützen. Man kann natürlich über den Sinn streiten, wo doch Flatrates eine weite Verbreitung haben. Muss ich wohl so akzeptieren.
Jetzt habe ich noch das Problem, dass sich beide Videos nicht gleichzeitig abspielen lassen, wenn ich Youtube starte stoppt das eigene und umgekehrt. Wahrscheinlich auch ein Feature statt einem Bug.
 
Zuletzt bearbeitet:
Man kann natürlich über den Sinn streiten, wo doch Flatrates eine weite Verbreitung haben.
...die alle ein begrenztes ungedrosseltes Inklusivvolumen haben. D.h., als Smartphone-Surfe möchte ich nicht bereits mehrere MB verschwendet haben, bloß weil ein Video, das ich eventuell gar nicht anschauen will, einfach automatisch startet.
Generell finde ich automatisch startende Videos/Audio extrem nervig. Wenn ich etwas anschauen will, muss ich dafür nur auf Play klicken...
 
Stimmt, der Fehler lag hier:
Code:
if (touch) ytplayer.playVideo();
d. h. das Video wurde nur auf Touch-Geräten gestartet. Beabsichtigt war es genau anders herum. Habe ich inzwischen korrigiert.
 
Auch wenn es schon gelöst ist fürs nächste mal: Mit reduziertem Code meine ich natürlich ein vollständiges und lauffähiges Script, das um alles reduziert wurde, was für die Fehlerreproduktion nicht nötig ist. Nicht einfach einen Ausschnitt Zeilen aus dem Code irgendwo raus kopieren :)

Inzwischen habe ich jedoch gelernt, dass das automatische Abspielen von Multimedia-Inhalten auf mobilen Geräten geblockt ist
Das gilt aber nur für Browser. Machst eine kleine App draus, wird nichts geblockt.
 
Zuletzt bearbeitet:
Zurück
Oben