HTML5 <video> องค์ประกอบบน Android


90

ตาม:

http://developer.android.com/sdk/android-2.0-highlights.html

Android 2.0 ควรรองรับองค์ประกอบวิดีโอ HTML5 ฉันไม่สามารถใช้งานได้โดยใช้ Motorola Droid และไม่สามารถดูวิดีโอบนหน้าตัวอย่างวิดีโอ HTML5 ใด ๆ ได้สำเร็จ เนื่องจากตอนนี้ยังไม่รองรับ QuickTime หรือ Flash นี่เป็นเพียงสิ่งเดียวที่ฉันคิดได้สำหรับการฝังวิดีโอ mp4 ในหน้าเว็บ มีใครโชคดีบ้างคะ?


2
ฉันมี Droid เช่นกันและไม่สามารถเล่นวิดีโอ html5 ได้ แม้แต่ไซต์ "วิดีโอสำหรับทุกคน" ก็ใช้ไม่ได้
haxney

"วิดีโอสำหรับทุกคน" เปลี่ยนเส้นทางไปยังหน้าแรกที่ดูโง่ ๆ สำหรับฉัน - ฉันไม่สามารถแม้แต่จะพยายามดู แต่การสาธิตเพียงรายการเดียวในหน้านั้น!
jmans

วางวิดีโอในระบบไฟล์ภายใน / ภายนอกและเข้าถึงได้ ตัวอย่าง: - <video controls = 'controls'> <source src = "file: /storage/sdcard0/video_name.mp4" type = 'video / mp4'>; </video>
Ravikiran

คำตอบ:


78

ฉันเพิ่งทำการทดลองกับสิ่งนี้และจากสิ่งที่ฉันบอกได้ว่าคุณต้องการสามสิ่ง:

  1. คุณต้องไม่ใช้แอตทริบิวต์typeเมื่อโทรหาวิดีโอ
  2. คุณต้องโทรด้วยตนเอง video.play ()
  3. วิดีโอต้องเข้ารหัสเป็นพารามิเตอร์ที่ค่อนข้างเข้มงวด การใช้การตั้งค่า iPhone บน Handbrake ที่มีการตรวจสอบปุ่ม 'Web Optimized' มักจะเป็นการหลอกลวง

ดูการสาธิตในหน้านี้: http://broken-links.com/tests/video/

ใช้งานได้ AFAIK ในเบราว์เซอร์เดสก์ท็อปที่เปิดใช้งานวิดีโอทั้งหมด iPhone และ Android

นี่คือมาร์กอัป:

<video id="video" autobuffer height="240" width="360">
<source src="BigBuck.m4v">
<source src="BigBuck.webm" type="video/webm">
<source src="BigBuck.theora.ogv" type="video/ogg">
</video>

และฉันมีสิ่งนี้ใน JS:

var video = document.getElementById('video');
video.addEventListener('click',function(){
  video.play();
},false);

ฉันทดสอบสิ่งนี้กับ Samsung Galaxy S และใช้งานได้ดี


1
ดูเหมือนการสาธิตจะใช้ไม่ได้กับ Nexus One ของฉัน (ไม่มีอะไรเกิดขึ้นเมื่อฉันแตะ "เล่น")
itsadok

1
BTW ลิงก์ที่คุณให้ไม่ทำงานบน 2.3.3 Nexus One ข้อความ: ไม่สามารถเล่นวิดีโอนี้ได้
Panthro

@RafaelRoman ฉันได้รวมและตอบแล้วหวังว่าจะใช้งานได้ใน Nexus One (อย่างน้อยก็ทำเพื่อฉัน): stackoverflow.com/a/8952025/1108032
Boris Strandjev

ฉันไม่สามารถทำให้สิ่งนี้ทำงานบนอุปกรณ์แท็บเล็ต 4.0.4 ของฉันได้ ฉันคิดว่าคนพื้นเมืองเป็นหนทางที่จะไป
แฮร์รี่

1
ไม่ทำงานบน Android 5.x วิดีโอเป็นสีดำจนกว่าจะคลิกเล่น
FiringSquadWitness

9

คำตอบของ Roman ใช้ได้ผลดีสำหรับฉันหรืออย่างน้อยก็ให้สิ่งที่ฉันคาดหวัง การเปิดวิดีโอในแอปพลิเคชันเนทีฟของโทรศัพท์นั้นเหมือนกับที่ iPhone ทำทุกประการ

อาจจะคุ้มค่าที่จะปรับมุมมองของคุณและคาดว่าวิดีโอจะเล่นแบบเต็มหน้าจอในแอปพลิเคชันของตัวเองและเข้ารหัสสำหรับสิ่งนั้น เป็นเรื่องที่น่าผิดหวังที่การคลิกวิดีโอนั้นไม่เพียงพอที่จะเล่นในลักษณะเดียวกับ iPhone แต่เนื่องจากต้องใช้แอตทริบิวต์ onclick ในการเปิดใช้งานเท่านั้นจึงไม่ใช่จุดจบของโลก

คำแนะนำของฉัน FWIW คือใช้ภาพโปสเตอร์และทำให้ชัดเจนว่าจะเล่นวิดีโอได้ ตอนนี้ฉันกำลังทำโปรเจ็กต์ที่ทำได้อย่างแม่นยำและลูกค้าก็พอใจกับมัน - และพวกเขายังได้รับแอพพลิเคชั่นเว็บเวอร์ชัน Android ฟรีเนื่องจากสัญญามีไว้สำหรับ แอพเว็บ iPhone

เพื่อเป็นภาพประกอบแท็กวิดีโอ Android ที่ใช้งานได้จะอยู่ด้านล่าง สวยและเรียบง่าย

<video src="video/placeholder.m4v" poster="video/placeholder.jpg" onclick="this.play();"/>

มีปัญหาแปลก ๆ กับสิ่งนี้บนเบราว์เซอร์เดสก์ท็อป - ใน chrome และ firefox หากคุณใช้controlsแอตทริบิวต์เหตุการณ์ onclick จะถูกข้ามเมื่อคุณกดหยุดชั่วคราว (ดังนั้นวิดีโอจึงหยุดชั่วคราว) แต่เมื่อคุณคลิกเล่นจะไม่มีอะไรเกิดขึ้น - คุณต้องคลิกในวิดีโอ (ไม่ใช่ปุ่มเล่นจริง) เพื่อให้วิดีโอกลับมาเล่นต่อ
กีบ

นี้ได้ผล ฉันสามารถเล่นวิดีโอ h264 บน Android ได้ ไฟล์มีส่วนต่อท้าย mp4
neoneye

8

ฉันรวมวิธีที่เพื่อนของฉันแก้ปัญหาการแสดงวิดีโอใน HTML ใน Nexus One:

ฉันไม่สามารถทำให้วิดีโอเล่นแบบอินไลน์ได้ จริงๆแล้วหลาย ๆ คนบนอินเทอร์เน็ตพูดถึงอย่างชัดเจนว่าการเล่นวิดีโอแบบอินไลน์ใน HTML นั้นรองรับตั้งแต่ Honeycomb และเรากำลังต่อสู้กับ Froyo และ Gingerbread ... สำหรับโทรศัพท์ขนาดเล็กฉันคิดว่าการเล่นแบบเต็มหน้าจอนั้นเป็นธรรมชาติมาก - อย่างอื่นก็ไม่ค่อยมีให้เห็น . เป้าหมายคือการเปิดวิดีโอแบบเต็มหน้าจอ อย่างไรก็ตามวิธีแก้ปัญหาที่นำเสนอในชุดข้อความนี้ไม่ได้ผลสำหรับเรา - การคลิกที่องค์ประกอบทำให้ไม่มีอะไรเกิดขึ้น นอกจากนี้ยังมีการแสดงการควบคุมวิดีโอ แต่ไม่มีโปสเตอร์แสดงดังนั้นประสบการณ์ของผู้ใช้จึงแปลกกว่า สิ่งที่เขาทำมีดังต่อไปนี้:

แสดงโค้ดเนทีฟลงใน HTML เพื่อให้สามารถเรียกใช้ได้ผ่านจาวาสคริปต์:

JavaScriptInterface jsInterface = new JavaScriptInterface(this);
webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface(jsInterface, "JSInterface");

ตัวโค้ดเองมีฟังก์ชันที่เรียกกิจกรรมเนทีฟเพื่อเล่นวิดีโอ:

public class JavaScriptInterface {
    private Activity activity;

    public JavaScriptInterface(Activity activiy) {
        this.activity = activiy;
    }

    public void startVideo(String videoAddress){
        Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setDataAndType(Uri.parse(videoAddress), "video/3gpp"); // The Mime type can actually be determined from the file
        activity.startActivity(intent);
    }
}

จากนั้นใน HTML เองเขาก็ยังคงล้มเหลวทำให้แท็กวิดีโอเล่นวิดีโอได้ ดังนั้นในที่สุดเขาจึงตัดสินใจเขียนทับonclickเหตุการณ์ของวิดีโอทำให้เป็นการเล่นจริง เกือบจะได้ผลสำหรับเขา - ยกเว้นว่าจะไม่มีโปสเตอร์ปรากฏขึ้น นี่คือส่วนที่แปลกที่สุด - เขาได้รับERROR/AndroidRuntime(7391): java.lang.RuntimeException: Null or empty value for header "Host"ทุกครั้งที่ตั้งค่าposterแอตทริบิวต์ของแท็ก ในที่สุดเขาก็พบปัญหาซึ่งแปลกมาก - ปรากฎว่าเขาเก็บsourceแท็videoกย่อยไว้ในแท็ก แต่ไม่เคยใช้เลย และน่าแปลกที่นี่เป็นสาเหตุของปัญหา ตอนนี้ดูคำจำกัดความของvideoส่วนนี้:

<video width="320" height="240" controls="controls" poster='poster.gif'  onclick="playVideo('file:///sdcard/test.3gp');" >
   Your browser does not support the video tag.
</video>

แน่นอนคุณต้องเพิ่มคำจำกัดความของฟังก์ชันจาวาสคริปต์ในส่วนหัวของหน้าด้วย:

<script>
  function playVideo(video){
    window.JSInterface.startVideo(video);
  }
</script>

ฉันตระหนักดีว่านี่ไม่ใช่โซลูชัน HTML อย่างเดียว แต่เป็นวิธีที่ดีที่สุดที่เราสามารถทำได้สำหรับโทรศัพท์ประเภท Nexus One เครดิตทั้งหมดสำหรับการแก้ปัญหานี้ไปที่ Dimitar Zlatkov Dimitrov


ฉันต้องเพิ่มฟังก์ชั่น javascript playVideo (videoName) โดยอ้างอิงถึง JSInterface เพื่อให้มันใช้งานได้ - อาจไม่ชัดเจนสำหรับคนที่ไม่เคยใช้เทคนิคนี้มาก่อน นอกจากนี้ฉันต้องการสร้างเส้นทางแบบเต็มด้วย getExternalDirectory () ในฟังก์ชัน startVideo ที่มีเพียงชื่อของไฟล์ที่ส่งผ่านจาก Javascript ใช้งานได้สำหรับฉันยกเว้นว่าภาพโปสเตอร์จะหายไปเมื่อกิจกรรมวิดีโอปิดลงและ WebView กลับโฟกัสได้ (WebView ของฉันฝังอยู่ใน ViewPager) ขอบคุณ.
alan-p

ขอบคุณสำหรับคอมเม้น ฉันได้เพิ่มสคริปต์การโทร javascript แล้วโฆษณายังเห็นด้วยอย่างสมบูรณ์กับความคิดเห็นของการสร้างเส้นทางวิดีโออย่างไรก็ตามฉันคิดว่านี่เป็นสิ่งที่ทุกคนสามารถแก้ไขได้ตามความต้องการของเขา
Boris Strandjev

ฉันมีข้อผิดพลาด "Null หรือค่าว่างสำหรับโฮสต์ส่วนหัว" ด้วย เป็นแท็กต้นทางที่ไม่ได้ใช้ แท็กซอร์สนี้ถูกใช้โดยแอพ ios (แอพ phonegap) ตอนนี้ฉันกำลังแทรกซอร์สแท็กบน ios เท่านั้นและมันก็ใช้งานได้ดี ขอบคุณที่ช่วยแก้ไขปัญหาแปลก ๆ นี้
Guillaume Gendre

5

หากคุณเรียกด้วยตนเองvideo.play()ควรใช้งานได้:

<!DOCTYPE html>
<html>
<head>
  <script>
    function init() {
      enableVideoClicks();
    }

    function enableVideoClicks() {
      var videos = document.getElementsByTagName('video') || [];
      for (var i = 0; i < videos.length; i++) {
        // TODO: use attachEvent in IE
        videos[i].addEventListener('click', function(videoNode) {
          return function() {
            videoNode.play();
          };
        }(videos[i]));
      }
    }
  </script>
</head>
<body onload="init()">

  <video src="sample.mp4" width="400" height="300" controls></video>

  ...

</body>
</html>

2
สิ่งนี้ทำให้ฉันไปที่ไอคอนภาพยนตร์ที่ฉันสามารถคลิกเพื่อดู MP4 ในแอปวิดีโอได้ แต่ยังไม่ให้วิดีโอแบบอินไลน์
jmans

รองรับวิดีโอแบบอินไลน์ตั้งแต่ Android 3.1
Roman Nurik

ใครสามารถยืนยันได้ว่าสิ่งนี้ใช้ได้กับอุปกรณ์รังผึ้ง + ฉันไม่สามารถทำให้มันทำงานบน 3.2 ฉันได้ยินเสียงและไม่เห็นวิดีโอใด ๆ
dongshengcn

4

ชี้เบราว์เซอร์ android 2.2 ของฉันไปที่html5test.comบอกฉันว่าองค์ประกอบวิดีโอได้รับการสนับสนุน แต่ไม่มีตัวแปลงสัญญาณวิดีโอในรายการ ... ดูเหมือนจะไม่มีจุดหมายเล็กน้อยที่จะรองรับองค์ประกอบวิดีโอ แต่ไม่มีตัวแปลงสัญญาณ ??? เว้นแต่จะมีบางอย่างผิดปกติกับหน้าทดสอบนั้น

อย่างไรก็ตามฉันพบสถานการณ์เดียวกันกับองค์ประกอบเสียง: องค์ประกอบได้รับการสนับสนุน แต่ไม่มีรูปแบบเสียง ดูที่นี่:

http://textopiablog.wordpress.com/2010/06/25/browser-support-for-html5-audio/


เหมือนกันสำหรับฉันกับ html5test.com บน SGS 2.1update1 คุณพบวิธีฝังวิดีโอหรือยัง เมื่อฉันเปิดไซต์ทดสอบbroken-links.com/tests/videoและคลิกที่ไอคอนเล่นวิดีโอจะเล่น แต่ไม่ได้ฝัง (เช่นเดียวกับเดสก์ท็อป / Firefox) แต่เปิดในโปรแกรมเล่นสื่อ
Mathias Conradt

เหมือนกันที่นี่กับ LG Optimus Black ของฉัน ... แต่การสาธิตเกี่ยวกับลิงก์ที่ใช้งานไม่ได้ ฉันจะพยายามเข้ารหัสด้วยเบรกมือ
ท่าเรือ

4

ไม่มีอะไรใช้ได้ผลสำหรับฉันจนกว่าฉันจะเข้ารหัสวิดีโออย่างถูกต้อง ลองใช้คำแนะนำนี้สำหรับการตั้งค่าเบรกมือที่ถูกต้อง: http://forum.handbrake.fr/viewtopic.php?f=7&t=9694


แก้ไขปัญหาให้ฉันด้วย แต่ mpeg4 ใช้ไม่ได้กับเบราว์เซอร์อื่นฉันจึงสร้างวิดีโอ 2 เลเยอร์ mpeg4 แรกแล้ว h264: <video width = "480" height = "386" autoplay loop muted playsinline> <source src = "assets / chat_letter_mpeg4.mp4" type = "video / mp4"> <! - MPEG4 สำหรับ Android - -> <source src = "assets / chat_letter_h264.mp4" type = "video / mp4"> <! - h264 สำหรับทุกอย่างอื่น -> <img alt = "" src = "assets / chat_letter.png"> <! - รูปภาพเป็นทางเลือกสำหรับ IE8 -> </video>
yodalr

1

บางทีคุณอาจต้องเข้ารหัสวิดีโอสำหรับอุปกรณ์โดยเฉพาะเช่น:

<video id="movie" width="320" height="240" autobuffer controls>
  <source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"'>
  <source src="pr6.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
<source src="pr6.mp4" type='video/mp4; codecs="some droid video codec, some droid audio codec"'>
</video>

มีตัวอย่างของการกำหนดค่าการเข้ารหัสที่ใช้งานได้ที่นี่:

https://supportforums.motorola.com


1

ลอง h.264 ในคอนเทนเนอร์ mp4 ฉันประสบความสำเร็จอย่างมากกับ Droid X ของฉันฉันใช้ zencoder.com สำหรับการแปลงรูปแบบ


1

สิ่งนี้ใช้ได้กับฉัน:

<video id="video-example" width="256" height="177" poster="image.jpg">
<source src="video/video.mp4" type="video/mp4"></source>
<source src="video/video.ogg" type="video/ogg"></source>
This browser does not support HTML5
</video>

ก็ต่อเมื่อไฟล์. mp4 อยู่ด้านบนและไฟล์วิดีโอไม่ใหญ่


0

มันควรจะใช้งานได้ แต่ดูความละเอียด: Android 2.0 และ webkit

Canvas ใช้งานได้ทันทีในขณะที่ Geolocation ดูเหมือนจะไม่ทำงานเลยใน Emulator แน่นอนฉันต้องส่งสถานที่จำลองเพื่อให้มันใช้งานได้ดังนั้นฉันไม่รู้ว่ามันจะเป็นอย่างไรในโทรศัพท์จริง ฉันสามารถพูดเช่นเดียวกันกับแท็กวิดีโอ มีปัญหาเกี่ยวกับการไม่เล่นวิดีโอ แต่ฉันคิดว่ามันเป็นความจริงที่ว่าวิดีโอมีความละเอียดสูงกว่าที่ Emulator สามารถจัดการได้ เราจะรู้มากขึ้นเมื่อมีคนลองใช้ Motorola Droid หรืออุปกรณ์ Android รุ่นต่อไปอื่น ๆ


ฉันจะลองยุ่งกับความละเอียด แต่ฉันใช้อุปกรณ์จริงและสตรีมวิดีโอ (เว็บแคม) ค่อนข้างต่ำ
jmans

0

สิ่งนี้อาจไม่ตรงกับคำถามของคุณ แต่เราใช้รูปแบบไฟล์ 3GP หรือ 3GP2 ดีกว่าแม้จะใช้โปรโตคอล rtsp แต่เบราว์เซอร์ Android จะจดจำรูปแบบไฟล์ 3GP

คุณสามารถใช้สิ่งที่ต้องการ

self.location = URL_OF_YOUR_3GP_FILE

เพื่อเรียกโปรแกรมเล่นวิดีโอ ไฟล์จะถูกสตรีมและหลังจากการเล่นจบลงการจัดการจะถูกส่งกลับไปที่เบราว์เซอร์

สำหรับฉันสิ่งนี้ช่วยแก้ปัญหาได้มากมายเกี่ยวกับการติดตั้งแท็กวิดีโอในอุปกรณ์ Android ในปัจจุบัน


สวัสดีฉันลองใช้แอนดรอยด์ WebView แล้ว แต่ไม่ได้ผลมีการตั้งค่าอื่น ๆ ที่ฉันต้องทำหรือไม่? ฉันใช้รหัสในลิงค์นี้
Kris

ไม่ฉันไม่รู้วิธีอื่นในการบรรลุเป้าหมายนี้
leviathan

0

อ้างอิงจาก: https://stackoverflow.com/a/24403519/365229

สิ่งนี้ควรใช้กับ Javascript ธรรมดา:

var myVideo = document.getElementById('myVideoTag');

myVideo.play();
if (typeof(myVideo.webkitEnterFullscreen) != "undefined") {
    // This is for Android Stock.
    myVideo.webkitEnterFullscreen();
} else if (typeof(myVideo.webkitRequestFullscreen)  != "undefined") {
    // This is for Chrome.
    myVideo.webkitRequestFullscreen();
} else if (typeof(myVideo.mozRequestFullScreen)  != "undefined") {
    myVideo.mozRequestFullScreen();
}

คุณต้องทริกเกอร์การเล่น () ก่อนคำสั่งแบบเต็มหน้าจอมิฉะนั้นในเบราว์เซอร์ Android มันจะไปเต็มหน้าจอ แต่จะไม่เริ่มเล่น ทดสอบกับเบราว์เซอร์ Android, Chrome, Safari เวอร์ชันล่าสุด

ฉันได้ทดสอบบนเบราว์เซอร์ Android 2.3.3 และ 4.4 แล้ว


0

หลังจากการวิจัยมากมายในอุปกรณ์ต่างๆจนถึงตอนนี้ฉันได้ข้อสรุปง่ายๆที่MP4รองรับน้อยกว่าMOVรูปแบบมาก ดังนั้นฉันกำลังใช้MOVรูปแบบซึ่งรองรับโดยอุปกรณ์ Android และ Apple ในทุกเบราว์เซอร์ ฉันตรวจพบสภาพอากาศว่าอุปกรณ์เป็นอุปกรณ์เคลื่อนที่หรือเบราว์เซอร์เดสก์ท็อปและตั้งค่าSRCตามนั้น:

if (IsMobile()) {
    $('#vid').attr('src', '/uploads/' + name + '.mov');
}
else {
    $('#vid').attr('src', '/uploads/' + name + '.webm');        
}

function IsMobile() {
    var isMobile = false; //initiate as false

    if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|ipad|iris|kindle|Android|Silk|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(navigator.userAgent)
                || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(navigator.userAgent.substr(0, 4))) isMobile = true;
    return isMobile;
}

0

ฉันลองใช้.mp4รูปแบบนี้เพื่อเล่นวิดีโอบนอุปกรณ์ Android แต่ก็ไม่ได้ผล ดังนั้นหลังจากลองผิดลองถูกฉันจึงแปลงวิดีโอเป็น.webmรูปแบบและทำตามโค้ดโดยไม่มีจาวาสคริปต์หรือ JQuery เพิ่มเติม:

<video id="video" class="video" muted loop autoplay>
    <source src="../media/some_video.webm" type="video/webm">
    Sorry, your browser doesn't support embedded videos.
</video>

ทำงานบนอุปกรณ์ Android รุ่นเก่า (อย่างน้อยก็มีอายุในปี 2020)


-4

HTML5 รองรับทั้งโทรศัพท์ Google (Android) เช่น Galaxy S และ iPhone อย่างไรก็ตาม iPhone ไม่รองรับ Flash ซึ่งโทรศัพท์ Google รองรับ


โทรศัพท์ Google ทิ้ง Flash ใน Android 4.0 (ICS) และคำถามนี้ไม่ได้เกี่ยวกับ iPhone
greg.kindel
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.