Pada jaringan seluler, iOS SDK dapat melaporkan unggahan berhasil meskipun unggahan tersebut gagal diam-diam di tengah proses. Konektivitas nirkabel yang buruk atau pergantian jaringan selama unggahan berukuran besar menyebabkan transfer gagal. Objek tidak muncul di Konsol OSS karena seluruh file belum selesai diunggah.
Gunakan pendekatan berikut untuk memastikan unggahan yang andal pada jaringan seluler.
Pilih metode unggah yang tepat
Resumable upload membagi file menjadi bagian-bagian yang dilacak secara independen. Jika suatu bagian gagal, hanya bagian tersebut yang dicoba ulang—bukan seluruh file. Untuk file besar pada jaringan seluler, metode ini merupakan pilihan yang direkomendasikan.
| Single upload | Resumable upload | |
|---|---|---|
| Terbaik untuk | File kecil pada jaringan stabil | File besar atau jaringan seluler tidak stabil |
| Saat terjadi kegagalan jaringan | Harus memulai ulang seluruh unggahan | Mencoba ulang hanya bagian yang gagal |
Lihat Resumable upload dalam Referensi developer.
Konfigurasikan timeout dan jumlah percobaan ulang
Untuk aplikasi seluler, konfigurasikan OSSClientConfiguration guna mengatur durasi permintaan menunggu sebelum timeout dan jumlah percobaan ulang saat terjadi kegagalan:
OSSClientConfiguration * conf = [OSSClientConfiguration new];
conf.maxRetryCount = 3; // Jumlah percobaan ulang setelah permintaan jaringan gagal akibat exception.
conf.timeoutIntervalForRequest = 30; // Periode timeout untuk permintaan jaringan, dalam detik.Verifikasi integritas unggahan
Dua mekanisme tersedia untuk memastikan bahwa data yang diterima OSS sesuai dengan data yang dikirim.
Tetapkan Content-Type dan aktifkan verifikasi MD5
Tetapkan Header Content-Type dan aktifkan verifikasi MD5 pada permintaan unggah. Jika hash MD5 tidak cocok, unggah ulang objek tersebut.
Periksa nilai CRC-64
OSS mengembalikan checksum CRC-64 untuk objek yang diunggah menggunakan metode unggah apa pun. Bandingkan nilai tersebut dengan nilai CRC-64 yang dihitung secara lokal untuk memastikan integritas data.
Lihat Memeriksa Integritas Transmisi Data Menggunakan CRC-64.
Aktifkan logging untuk mendiagnosis kegagalan unggahan
Tersedia dua opsi logging untuk melacak masalah unggahan.
OSS logging feature
OSS logging feature mencatat aktivitas unggahan secara real time dan membantu mengidentifikasi titik kegagalan.
OSS SDK local logging
Lingkungan operasi seluler bersifat tidak dapat diprediksi—SDK mungkin tidak tersedia di wilayah atau periode tertentu. Setelah mengaktifkan local logging, SDK menulis entri log ke sandbox perangkat atau folder OSSLogs. Inisialisasi client dan panggil metode pengaktifan log untuk mengaktifkannya. Secara opsional, unggah log tersebut ke server untuk analisis lebih mendalam.