Memuat turun

Apa yang dilakukan oleh pengurus muat turun yang tidak dilakukan oleh pelayar web

Fail empat gigabait, sembilan puluh peratus siap, kemudian panggilan telefon — atau sekadar skrin dikunci — dan ia hilang. Ini adalah aduan paling biasa tentang muat turun pada iOS, dan ia bukan pepijat. Ia adalah sistem pengendalian melakukan tepat apa yang direka untuknya, dan sebab kenapa satu kelas aplikasi berasingan wujud.

7 min baca Dikemas kini 29 Julai 2026

  • 30s Kira-kira berapa lama aplikasi yang digantung terus berjalan sebelum iOS menghentikannya
  • 206 Status HTTP yang menjadikan sambung semula mungkin berlaku
  • 1 byte Berapa banyak pemindahan yang disambung semula dengan betul dimuat turun semula

Kenapa pemindahan berhenti apabila anda menukar aplikasi

iOS tidak membenarkan aplikasi terus berfungsi hanya kerana ia mahu. Apabila anda keluar daripada aplikasi, ia digantung dalam beberapa saat, dan aplikasi yang digantung tiada masa CPU, tiada soket rangkaian dan tiada cara untuk menyedari ia telah dihentikan. Segala yang dipegangnya dalam memori masih ada, tetapi beku — dan jika sistem memerlukan memori itu, aplikasi ditamatkan terus tanpa diberitahu.

Muat turun yang berjalan pada sambungan biasa dalam aplikasi itu sendiri oleh itu berakhir pada gerak isyarat home. Sesetengah aplikasi menyembunyikan ini dengan meminta beberapa saat tambahan masa latar belakang, sebab itulah muat turun kadangkala bertahan apabila dilatarbelakangkan tepat selama masa yang anda ambil untuk menyedari ia sebenarnya tidak bertahan.

Jawapan yang betul adalah berbeza dari segi jenisnya. iOS menyediakan perkhidmatan pemindahan latar belakang: anda menyerahkan sistem senarai URL dan destinasi, dan sistem itu sendiri yang memuat turun, dalam prosesnya sendiri, mengikut jadualnya sendiri. Aplikasi anda boleh digantung, ditamatkan, atau langsung tidak berjalan — pemindahan diteruskan, dan aplikasi dilancarkan semula di latar belakang apabila ada sesuatu untuk dilaporkan. Ini adalah mekanisme di sebalik setiap muat turun yang bertahan skrin dikunci, dan menggunakannya adalah keputusan reka bentuk yang dibuat oleh aplikasi dari awal, bukan tetapan yang boleh anda hidupkan.

Empat mekanik yang menentukan sama ada muat turun bertahan

Permintaan julat
Permintaan HTTP yang meminta byte 5,000,000 dan seterusnya dan bukan keseluruhan fail. Jika pelayan menjawab 206 Partial Content, sambung semula dari tengah mungkin; jika ia menjawab 200 OK dan bermula dari awal, tidak mungkin — fail perlu diambil semula dari sifar.
Sambungan selari
Membahagikan satu fail kepada beberapa julat dan mengambilnya pada masa yang sama. Ia membantu kerana satu sambungan tunggal selalunya dihadkan oleh pelayan atau dihadkan oleh kependaman perjalanan pergi-balik, bukan kerana internet anda lebih laju dengan lebih banyak soket dibuka.
Ofset komited
Berapa banyak fail yang selamat ditulis ke cakera, berbanding masih dalam perjalanan. Muat turun yang sambung semula daripada byte terakhir yang komited adalah betul; yang sambung semula daripada apa yang *disangkanya* diterima menghasilkan fail rosak yang hanya terdedah berjam-jam kemudian.
Sesi latar belakang
Pemindahan yang dijalankan sistem yang diterangkan di atas. Ia lebih perlahan untuk bermula, tidak boleh diberikan logik tersuai sewenang-wenangnya, dan ia satu-satunya yang terus berjalan apabila aplikasi tidak berjalan.

Kenapa muat turun gagal, dan bagaimana rupa setiap kegagalan

Kebanyakan laporan "muat turun tersekat" adalah salah satu daripada lima ini, dan mudah dibezakan sebaik sahaja anda tahu bentuknya.

Apa yang anda lihatApa yang sebenarnya berlakuApa yang membantu
Berhenti sebaik sahaja anda keluar daripada aplikasiPemindahan berjalan dalam proses, bukan dalam sesi latar belakang.Tiada apa yang boleh anda lakukan dari luar — ini adalah isu reka bentuk aplikasi.
Bermula semula dari 0% setiap kaliPelayan mengabaikan permintaan julat, jadi tiada cara untuk meneruskan dari tengah.Sambungan yang stabil, atau fail yang lebih kecil. Sesetengah hos membenarkan julat hanya untuk pautan yang ditandatangani.
Gagal selepas beberapa minit, berulang kaliPautan telah tamat tempoh. Banyak hos mengeluarkan URL yang sah selama lima atau sepuluh minit.Ambil semula pautan daripada halamannya dan mula semula; yang lama tidak akan pernah berfungsi.
Memuat turun dengan pantas, kemudian fail tidak dapat dibukaApa yang tiba adalah halaman ralat HTML atau halaman log masuk dengan nama fail video.Semak saiz — "filem" 14 KB adalah halaman web. Periksa pautan sebelum meneruskan.
Sangat perlahan walaupun sambungan pantasPengehadan setiap sambungan di penghujung pelayan.Lebih banyak sambungan selari, jika pelayan membenarkannya. Jika ia mengehadkan mengikut alamat IP dan bukan soket, tiada apa yang akan membantu.

Apabila langsung tiada fail untuk dimuat turun

Sebahagian besar video di web tidak disampaikan sebagai fail. Ia disampaikan sebagai HLS — senarai main .m3u8 yang menyenaraikan ratusan segmen kecil, beberapa saat setiap satu, selalunya pada beberapa tahap kualiti supaya pemain boleh menukar apabila sambungan anda berubah. Tiada satu URL tunggal yang memegang filem itu, kerana filem itu hanya wujud sebagai satu urutan.

Menyimpan satu bermakna mengambil setiap segmen dan kemudian remux: menulis strim video dan audio ke dalam bekas MP4 biasa. Tiada apa yang dienkod semula, jadi tiada apa yang hilang dan ia mengambil masa beberapa saat dan bukan sepanjang filem itu. Hasilnya adalah fail biasa yang dimainkan di mana-mana sahaja.

Ini juga sebab kenapa "muat turun strim ini" mengambil masa lebih lama untuk bermula berbanding memuat turun fail: senarai main perlu diambil dan dihurai, satu tahap kualiti dipilih, dan hanya kemudian segmen boleh mula tiba. Dan ini sebab kenapa sesetengah strim langsung tidak boleh disimpan — jika segmen disulitkan di bawah skim DRM, kunci sengaja tidak boleh diperoleh, dan tiada alat yang menghormati undang-undang akan mengatasinya.

Apa yang membezakan pengurus muat turun sebenar daripada sekadar butang muat turun

Ia bertahan apabila aplikasi ditutup

Pemindahan latar belakang diserahkan kepada sistem, dengan penyerahan yang diteruskan daripada byte komited yang sama dan bukan memulakan fail semula.

Ia memberitahu anda apa itu pautan sebelum anda komited

Saiz, jenis dan sama ada pelayan menyokong sambung semula — semuanya boleh diketahui daripada satu permintaan HEAD, dan semuanya berguna sebelum anda membelanjakan empat gigabait pelan data.

Ia beratur dan bukan membanjiri

Sepuluh fail serentak lebih perlahan daripada tiga pada satu masa, kerana setiap sambungan mendapat bahagian yang lebih kecil dan kegagalan berganda. Baris gilir dengan had konkurensi yang munasabah selesai lebih cepat.

Apa yang mendarat adalah fail biasa

Dalam folder yang boleh anda lihat, dinamakan dengan munasabah, boleh dimainkan oleh apa sahaja — bukan blob pangkalan data yang hanya boleh dibuka oleh aplikasi itu.

Tabiat yang mengelakkan kebanyakan masalah muat turun

  • Mulakan fail besar pada Wi-Fi dan biarkan skrin menyala untuk beberapa saat pertama

    Penyerahan kepada sesi latar belakang berlaku awal; selepas itu skrin tidak lagi penting.

  • Jangan beratur dua puluh item sekali gus

    Tiga hingga lima pemindahan serentak adalah titik terbaik pada hampir setiap sambungan.

  • Semak ruang kosong sebelum, bukan selepas

    Pemindahan yang memenuhi cakera gagal pada 98%, dan iOS mungkin sudah membuang cache anda cuba membuat ruang.

  • Berhati-hati dengan "selesai" secara serta-merta

    Filem yang selesai dalam dua saat adalah halaman ralat. Lihat saiz failnya.

  • Ambil semula pautan tamat tempoh daripada halamannya

    Mencuba semula URL bertandatangan yang mati akan gagal selama-lamanya, tidak kira berapa kali aplikasi mencubanya semula.

Bagaimana ini berbeza merentasi peranti

iPhone

Persekitaran paling ketat: penggantungan agresif dan storan terhad. Sesi latar belakang bukan pengoptimuman di sini, ia satu-satunya yang berfungsi.

iPad

Peraturan yang sama, dengan lebih banyak ruang untuk berjalan — dan satu-satunya peranti iOS di mana koleksi besar boleh secara munasabah mendarat pada pemacu luaran dan bukan storan dalaman.

Mac

Langsung tiada penggantungan, jadi pemindahan panjang berkelakuan sama seperti pada mana-mana desktop. Had praktikalnya adalah pelayan, bukan sistem pengendalian.

Soalan yang timbul daripada ini

Adakah lebih banyak sambungan sentiasa bermakna muat turun lebih pantas?

Tidak. Ia membantu apabila pelayan mengehadkan kelajuan setiap sambungan individu, yang biasa berlaku. Ia tidak membantu apabila hadnya adalah sambungan anda sendiri, dan ia boleh menjadikan keadaan lebih teruk apabila hos mengira soket setiap alamat IP dan mula menolaknya. Antara empat dan lapan adalah julat yang berguna; tiga puluh adalah kontraproduktif.

Bolehkah muat turun diteruskan semasa skrin dikunci?

Ya, jika ia diserahkan kepada perkhidmatan pemindahan latar belakang sistem. Skrin dikunci tidak relevan kepada perkhidmatan itu — aplikasi digantung itulah yang penting, dan tujuan keseluruhan mekanisme ini adalah ia terus berjalan tidak kira apa.

Kenapa muat turun saya bermula semula dan bukan sambung semula?

Pelayan tidak menghormati permintaan julat. Anda boleh tahu kerana kemajuan kembali ke sifar dan bukan meneruskan. Sesetengah hos menyokong julat hanya pada URL muat turun bertandatangan mereka, sesetengah mematikannya sepenuhnya, dan sedikit menghormatinya untuk fail kecil tetapi bukan fail besar.

Adakah menukar strim kepada MP4 sama dengan mengenkodnya semula?

Tidak. Remux memindahkan video dan audio sedia ada ke dalam bekas MP4 tanpa disentuh — lossless, dan cukup pantas untuk selesai dalam beberapa saat. Enkod semula membina semula gambar dengan codec berbeza dan sentiasa kehilangan kualiti. Jika menyimpan strim dua jam mengambil masa dua jam, sesuatu sedang dienkod semula sedangkan ia tidak perlu.

FoxDL

Bagaimana FoxDL memuat turun

Enjin ini mempunyai dua laluan: satu dalam proses yang pantas semasa aplikasi berada pada skrin, dan sesi latar belakang sistem yang mengambil alih daripada byte yang sama apabila ia tidak.

  • Cebisan selari untuk satu fail, ditulis terus ke kedudukan akhirnya pada cakera dan bukan ke bahagian sementara yang perlu digabungkan kemudian.
  • Pemindahan latar belakang yang diteruskan selepas aplikasi meninggalkan skrin, dan mengambil semula pada ofset komited terakhir — bukan pada byte terakhir yang disangka dimiliki oleh aplikasi.
  • Sambung semula selepas terputus, dimulakan semula atau ditutup paksa, dengan syarat pelayan menghormati permintaan julat. Apabila tidak, FoxDL memberitahu begitu dan bukan berulang tanpa henti.
  • Strim HLS di-remux kepada MP4, jadi apa yang mendarat dalam koleksi adalah fail biasa, bukan folder segmen.
  • Pemeriksa muat turun yang melaporkan saiz sebenar, jenis dan sokongan sambung semula bagi sesuatu pautan sebelum anda bermula.
  • Segala-galanya mendarat dalam folder biasa yang boleh dilihat oleh aplikasi Files.

Had percuma berbeza mengikut platform: pada iPhone dan iPad sebilangan kecil kali diisi semula dengan video berganjaran pendek yang anda mulakan sendiri; pada Mac, di mana langsung tiada pengiklanan, kiraan harian yang tetap. Pro menghapuskan had pada setiap peranti.

Soalan lazim

Semua soalan

Teruskan membaca

Koleksi anda, akhirnya dalam satu tempat.

Muat turun percuma. Tiada akaun, tiada daftar — set penuh dalam versi percuma.

Muat turun di App Store