การดาวน์โหลด

สิ่งที่ตัวจัดการดาวน์โหลดทำได้ที่เว็บเบราว์เซอร์ทำไม่ได้

ไฟล์สี่กิกะไบต์ เสร็จไปเก้าสิบเปอร์เซ็นต์ แล้วก็มีสายโทรเข้า — หรือแค่หน้าจอล็อก — แล้วมันก็หายไป นี่คือข้อร้องเรียนที่พบบ่อยที่สุดเกี่ยวกับการดาวน์โหลดบน iOS และมันไม่ใช่บั๊ก มันคือระบบปฏิบัติการทำในสิ่งที่มันถูกออกแบบมาให้ทำเป๊ะ ๆ และเป็นเหตุผลที่แอปประเภทแยกต่างหากมีอยู่

อ่าน 3 นาที อัปเดต 29 กรกฎาคม 2569

  • 30 วิ ประมาณเวลาที่แอปที่ถูกพักยังทำงานต่อได้ก่อน iOS จะหยุดมัน
  • 206 สถานะ HTTP ที่ทำให้การทำต่อเป็นไปได้เลย
  • 1 ไบต์ ปริมาณที่การโอนที่ทำต่ออย่างถูกต้องจะดาวน์โหลดซ้ำ

ทำไมการโอนถึงหยุดเมื่อคุณสลับแอป

iOS ไม่ปล่อยให้แอปทำงานต่อเพียงเพราะมันอยากทำ เมื่อคุณออกจากแอป มันจะถูกพักภายในไม่กี่วินาที และแอปที่ถูกพักไม่มีเวลาซีพียู ไม่มีซ็อกเก็ตเครือข่าย และไม่มีทางสังเกตได้ว่าตัวเองถูกหยุด ทุกอย่างที่มันเก็บไว้ในหน่วยความจำยังอยู่ที่นั่น แต่แช่แข็งไว้ — และถ้าระบบต้องการหน่วยความจำ แอปจะถูกยุติทันทีโดยไม่มีการแจ้งเตือน

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

คำตอบที่ถูกต้องนั้นต่างออกไปโดยพื้นฐาน iOS มี บริการโอนพื้นหลัง: คุณส่งมอบรายการ URL และปลายทางให้ระบบ แล้วระบบก็ดาวน์โหลดเอง ในโพรเซสของตัวเอง ตามตารางเวลาของตัวเอง แอปของคุณอาจถูกพัก ถูกยุติ หรือไม่ทำงานเลยก็ได้ — การโอนยังคงดำเนินต่อไป และแอปจะถูกเปิดขึ้นใหม่ในพื้นหลังเมื่อมีอะไรต้องรายงาน นี่คือกลไกเบื้องหลังดาวน์โหลดทุกอันที่รอดจากหน้าจอล็อก และการใช้มันคือการตัดสินใจด้านการออกแบบที่แอปทำไว้ล่วงหน้า ไม่ใช่การตั้งค่าที่คุณเปิดได้

กลไกสี่อย่างที่ตัดสินว่าดาวน์โหลดจะรอดหรือไม่

Range request
คำขอ HTTP ที่ขอไบต์ตั้งแต่ 5,000,000 เป็นต้นไปแทนที่จะขอทั้งไฟล์ ถ้าเซิร์ฟเวอร์ตอบด้วย 206 Partial Content การทำต่อจากกลางเป็นไปได้ ถ้ามันตอบ 200 OK และเริ่มจากจุดเริ่มต้น ก็ทำไม่ได้ — ไฟล์ต้องถูกดึงมาใหม่จากศูนย์
Parallel connections
การแบ่งไฟล์หนึ่งไฟล์เป็นหลายช่วงแล้วดึงพร้อมกัน มันช่วยเพราะการเชื่อมต่อเดียวมักถูกจำกัดความเร็วโดยเซิร์ฟเวอร์หรือถูกจำกัดด้วยเวลาไปกลับของเครือข่าย ไม่ใช่เพราะอินเทอร์เน็ตของคุณเร็วขึ้นเมื่อเปิดซ็อกเก็ตมากขึ้น
Committed offset
ปริมาณไฟล์ที่ถูกเขียนลงดิสก์อย่างปลอดภัยแล้ว ตรงข้ามกับที่ยังอยู่ระหว่างทาง ดาวน์โหลดที่ทำต่อจากไบต์ที่ยืนยันล่าสุดถูกต้อง ส่วนที่ทำต่อจากสิ่งที่มัน *คิดว่า* ได้รับแล้วจะสร้างไฟล์เสียหายที่จะเปิดเผยตัวเองอีกหลายชั่วโมงต่อมา
Background session
การโอนที่ระบบรันเองตามที่อธิบายไว้ข้างต้น เริ่มช้ากว่า ให้ตรรกะกำหนดเองตามใจไม่ได้ และเป็นสิ่งเดียวที่ยังทำงานต่อได้เมื่อแอปไม่ทำงาน

ทำไมดาวน์โหลดล้มเหลว และแต่ละแบบมีหน้าตาอย่างไร

รายงาน "ดาวน์โหลดค้าง" ส่วนใหญ่เป็นหนึ่งในห้าแบบนี้ และแยกแยะได้ง่ายเมื่อคุณรู้รูปแบบของมัน

สิ่งที่คุณเห็นสิ่งที่เกิดขึ้นจริงสิ่งที่ช่วยได้
หยุดทันทีที่คุณออกจากแอปการโอนกำลังทำงานในโพรเซส ไม่ใช่ในเซสชันพื้นหลังไม่มีอะไรที่คุณทำได้จากภายนอก — นี่คือปัญหาการออกแบบแอป
เริ่มใหม่จาก 0% ทุกครั้งเซิร์ฟเวอร์เมิน range request ดังนั้นจึงไม่มีทางทำต่อจากกลางได้การเชื่อมต่อที่เสถียร หรือไฟล์ที่เล็กกว่า โฮสต์บางแห่งอนุญาต range เฉพาะลิงก์ที่เซ็นชื่อแล้วเท่านั้น
ล้มเหลวหลังไม่กี่นาที ซ้ำแล้วซ้ำอีกลิงก์หมดอายุแล้ว โฮสต์หลายแห่งออก URL ที่ใช้ได้แค่ห้าหรือสิบนาทีดึงลิงก์ใหม่จากหน้าเดิมและเริ่มใหม่ ลิงก์เก่าจะไม่มีวันใช้ได้
ดาวน์โหลดเร็ว แล้วไฟล์ก็เปิดไม่ได้สิ่งที่มาถึงคือหน้าข้อผิดพลาด HTML หรือหน้าล็อกอินที่มีชื่อไฟล์วิดีโอเช็คขนาดไฟล์ — "ภาพยนตร์" ขนาด 14 KB คือหน้าเว็บ ตรวจสอบลิงก์ก่อนตัดสินใจ
ช้ามากทั้งที่การเชื่อมต่อเร็วการจำกัดความเร็วต่อการเชื่อมต่อที่ฝั่งเซิร์ฟเวอร์เพิ่มการเชื่อมต่อแบบขนาน ถ้าเซิร์ฟเวอร์อนุญาต ถ้ามันจำกัดตามที่อยู่ IP แทนที่จะเป็นซ็อกเก็ต ไม่มีอะไรช่วยได้

เมื่อไม่มีไฟล์ให้ดาวน์โหลดเลย

วิดีโอส่วนใหญ่บนเว็บไม่ได้ถูกส่งมาเป็นไฟล์ มันถูกส่งมาเป็น HLS — เพลย์ลิสต์ .m3u8 ที่ระบุส่วนย่อยเล็ก ๆ หลายร้อยชิ้น ชิ้นละไม่กี่วินาที มักมีหลายระดับคุณภาพเพื่อให้เครื่องเล่นสลับได้ตามการเชื่อมต่อที่เปลี่ยนไป ไม่มี URL เดียวที่เก็บภาพยนตร์ไว้ เพราะภาพยนตร์มีอยู่แค่ในรูปลำดับเท่านั้น

การบันทึกมันหมายถึงการดึงทุกส่วนย่อยแล้ว รีมักซ์ มัน: เขียนสตรีมวิดีโอและเสียงลงในคอนเทนเนอร์ MP4 ธรรมดา ไม่มีอะไรถูกเข้ารหัสใหม่ ดังนั้นไม่มีอะไรสูญเสียและใช้เวลาแค่ไม่กี่วินาทีแทนที่จะเป็นความยาวของภาพยนตร์ ผลลัพธ์คือไฟล์ธรรมดาที่เล่นได้ทุกที่

นี่ยังเป็นเหตุผลที่ "ดาวน์โหลดสตรีมนี้" ใช้เวลานานกว่าอย่างเห็นได้ชัดในการเริ่มเมื่อเทียบกับการดาวน์โหลดไฟล์: เพลย์ลิสต์ต้องถูกดึงมาและแยกวิเคราะห์ เลือกระดับคุณภาพ แล้วส่วนย่อยถึงจะเริ่มมาถึงได้ และนี่คือเหตุผลที่บางสตรีมเก็บไว้ไม่ได้เลย — ถ้าส่วนย่อยถูกเข้ารหัสภายใต้ระบบ DRM กุญแจจะถูกทำให้ไม่สามารถหามาได้โดยตั้งใจ และไม่มีเครื่องมือที่เคารพกฎหมายจะผ่านมันไปได้เลย

สิ่งที่แยกตัวจัดการดาวน์โหลดจริงออกจากปุ่มดาวน์โหลด

มันรอดจากการที่แอปถูกปิด

การโอนพื้นหลังที่ส่งมอบให้ระบบ พร้อมการส่งต่อที่ทำต่อจากไบต์ที่ยืนยันเดิมแทนที่จะเริ่มไฟล์ใหม่

มันบอกคุณว่าลิงก์คืออะไรก่อนที่คุณจะตัดสินใจ

ขนาด ประเภท และเซิร์ฟเวอร์รองรับการทำต่อหรือไม่ — ทั้งหมดรู้ได้จากคำขอ HEAD เดียว และมีประโยชน์ทั้งหมดก่อนที่คุณจะเสียข้อมูลสี่กิกะไบต์ไป

มันเข้าคิวแทนที่จะถล่มพร้อมกัน

สิบไฟล์พร้อมกันช้ากว่าสามไฟล์ทีละชุด เพราะแต่ละการเชื่อมต่อได้ส่วนแบ่งน้อยลงและความล้มเหลวก็ทวีคูณ คิวที่มีขีดจำกัดความพร้อมกันที่เหมาะสมจะเสร็จเร็วกว่า

สิ่งที่มาถึงคือไฟล์ธรรมดา

อยู่ในโฟลเดอร์ที่คุณเห็นได้ ตั้งชื่ออย่างเหมาะสม เล่นได้โดยอะไรก็ตาม — ไม่ใช่บล็อบฐานข้อมูลที่แค่แอปนั้นเปิดได้

นิสัยที่ป้องกันปัญหาดาวน์โหลดส่วนใหญ่

  • เริ่มไฟล์ขนาดใหญ่บน Wi-Fi และเปิดหน้าจอไว้สักสองสามวินาทีแรก

    การส่งต่อไปยังเซสชันพื้นหลังเกิดขึ้นเร็ว หลังจากนั้นหน้าจอไม่สำคัญอีกแล้ว

  • อย่าเข้าคิวยี่สิบไฟล์พร้อมกัน

    การโอนพร้อมกันสามถึงห้าคือจุดที่เหมาะสมที่สุดสำหรับแทบทุกการเชื่อมต่อ

  • เช็คพื้นที่ว่างก่อน ไม่ใช่หลัง

    การโอนที่เติมดิสก์จนเต็มจะล้มเหลวที่ 98% และ iOS อาจล้างแคชของคุณไปแล้วเพื่อหาที่ว่าง

  • ระวังไว้เมื่อเห็น "เสร็จสมบูรณ์" ทันที

    ภาพยนตร์ที่เสร็จภายในสองวินาทีคือหน้าข้อผิดพลาด ดูขนาดไฟล์

  • ดึงลิงก์ที่หมดอายุใหม่จากหน้าเดิม

    การลองใหม่กับ URL ที่เซ็นชื่อและตายแล้วจะล้มเหลวตลอดไป ไม่ว่าแอปจะลองกี่ครั้งก็ตาม

ความต่างระหว่างอุปกรณ์

iPhone

สภาพแวดล้อมที่เข้มงวดที่สุด: การพักทำงานเข้มงวดและพื้นที่จัดเก็บจำกัด เซสชันพื้นหลังไม่ใช่การปรับปรุงตรงนี้ มันคือสิ่งเดียวที่ใช้ได้ผล

iPad

กฎเดียวกัน แต่มีพื้นที่ทำงานมากกว่า — และเป็นอุปกรณ์ iOS เดียวที่คลังขนาดใหญ่สามารถลงจอดบนไดรฟ์ภายนอกแทนที่จะเป็นที่เก็บข้อมูลภายในได้อย่างสมเหตุสมผล

Mac

ไม่มีการพักทำงานเลย ดังนั้นการโอนระยะยาวจึงทำงานเหมือนบนเดสก์ท็อปทั่วไป ขีดจำกัดในทางปฏิบัติคือเซิร์ฟเวอร์ ไม่ใช่ระบบปฏิบัติการ

คำถามที่เกิดจากเรื่องนี้

การเชื่อมต่อมากขึ้นหมายถึงดาวน์โหลดเร็วขึ้นเสมอไหม

ไม่เสมอ มันช่วยเมื่อเซิร์ฟเวอร์จำกัดความเร็วของแต่ละการเชื่อมต่อ ซึ่งพบได้บ่อย มันไม่ช่วยอะไรเลยเมื่อขีดจำกัดคือการเชื่อมต่อของคุณเอง และมันอาจทำให้แย่ลงเมื่อโฮสต์นับซ็อกเก็ตต่อ IP และเริ่มปฏิเสธ ระหว่างสี่ถึงแปดคือช่วงที่มีประโยชน์ สามสิบคือทำให้แย่ลง

ดาวน์โหลดทำต่อได้ไหมขณะหน้าจอล็อกอยู่

ได้ ถ้ามันถูกส่งมอบให้บริการโอนพื้นหลังของระบบ หน้าจอล็อกไม่เกี่ยวข้องกับบริการนั้น — สิ่งที่สำคัญคือแอปถูกพักไว้ และประเด็นทั้งหมดของกลไกนี้คือมันดำเนินต่อไปไม่ว่าจะเกิดอะไรขึ้น

ทำไมดาวน์โหลดของฉันถึงเริ่มใหม่แทนที่จะทำต่อ

เซิร์ฟเวอร์ไม่ได้ทำตาม range request คุณบอกได้เพราะความคืบหน้ากลับไปที่ศูนย์แทนที่จะทำต่อ โฮสต์บางแห่งรองรับ range เฉพาะบน URL ดาวน์โหลดที่เซ็นชื่อของตัวเองเท่านั้น บางแห่งปิดมันไปเลย และบางแห่งรองรับสำหรับไฟล์เล็กแต่ไม่ใช่ไฟล์ใหญ่

การแปลงสตรีมเป็น MP4 เหมือนกับการเข้ารหัสใหม่ไหม

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

FoxDL

FoxDL ดาวน์โหลดอย่างไร

เอนจินมีสองเลน: เลนในโพรเซสที่เร็วขณะแอปอยู่บนหน้าจอ และเซสชันพื้นหลังของระบบที่รับช่วงต่อจากไบต์เดียวกันเมื่อไม่ได้อยู่

  • ชิ้นส่วนแบบขนาน สำหรับไฟล์เดียว เขียนตรงลงตำแหน่งสุดท้ายบนดิสก์แทนที่จะเป็นชิ้นส่วนชั่วคราวที่ต้องต่อกันทีหลัง
  • การโอนพื้นหลัง ที่ทำต่อหลังแอปออกจากหน้าจอ และรับช่วงจากออฟเซ็ตที่ยืนยันล่าสุด — ไม่ใช่ไบต์สุดท้ายที่แอปคิดว่าตัวเองได้รับ
  • ทำต่อได้หลังการเชื่อมต่อหลุด รีบูต หรือบังคับปิด ตราบใดที่เซิร์ฟเวอร์ทำตาม range request เมื่อมันไม่ทำ FoxDL จะบอกตรง ๆ แทนที่จะวนซ้ำ
  • สตรีม HLS รีมักซ์เป็น MP4 ดังนั้นสิ่งที่ลงในคลังคือไฟล์ธรรมดา ไม่ใช่โฟลเดอร์ของส่วนย่อย
  • ตัวตรวจสอบดาวน์โหลด ที่รายงานขนาดจริง ประเภท และการรองรับการทำต่อของลิงก์ก่อนที่คุณจะเริ่ม
  • ทุกอย่างลงในโฟลเดอร์ธรรมดา ที่แอป Files มองเห็นได้

โควตาฟรีต่างกันตามแพลตฟอร์ม: บน iPhone และ iPad จำนวนโควตาเล็กน้อยที่เติมได้ด้วยวิดีโอสั้นที่ได้รางวัลซึ่งคุณเริ่มเอง บน Mac ที่ไม่มีโฆษณาเลย เป็นจำนวนคงที่รายวัน Pro เอาข้อจำกัดออกในทุกอุปกรณ์

คำถามที่พบบ่อย

คำถามทั้งหมด

อ่านต่อ

คลังไฟล์ของคุณ อยู่รวมกันในที่เดียวสักที

ดาวน์โหลดฟรี ไม่มีบัญชี ไม่ต้องสมัคร ฟีเจอร์ครบในเวอร์ชันฟรี

ดาวน์โหลดบน App Store