全部产品
Search
文档中心

Object Storage Service:Progress bar (iOS SDK)

更新时间:Nov 30, 2025

Anda dapat menggunakan progress bar untuk menampilkan progres pengunggahan atau pengunduhan objek. Contoh berikut menggunakan operasi PutObject untuk menjelaskan cara menampilkan progress bar saat mengunggah objek.

Catatan Penggunaan

  • Sebelum menjalankan kode contoh dalam topik ini, Anda harus membuat instans OSSClient menggunakan metode seperti nama domain kustom atau Security Token Service (STS). Untuk informasi selengkapnya, lihat Inisialisasi.

    Catatan

    Wilayah bucket ditentukan oleh wilayah endpoint yang ditetapkan saat inisialisasi.

  • Untuk mengunggah file, Anda harus memiliki izin oss:PutObject. Untuk informasi selengkapnya, lihat Berikan kebijakan akses kustom kepada RAM user.

Contoh

Kode contoh berikut menunjukkan cara menampilkan progress bar saat mengunggah file lokal ke bucket:

OSSPutObjectRequest * put = [OSSPutObjectRequest new];
// Tentukan nama bucket. Contoh: examplebucket. 
put.bucketName = @"examplebucket";
// Tentukan path lengkap objek. Jangan sertakan nama bucket dalam path lengkap tersebut. Contoh: exampledir/exampleobject.txt. 
put.objectKey = @"exampledir/exampleobject.txt";
// Tentukan path lengkap file lokal yang ingin diunggah. 
// Secara default, jika Anda tidak menentukan path lengkap file lokal, file lokal akan diunggah dari path proyek tempat program contoh berada. 
put.uploadingFileURL = [NSURL fileURLWithPath:@"filePath"];
// Konfigurasikan fungsi callback progres untuk menampilkan progress bar. 
put.uploadProgress = ^(int64_t bytesSent, int64_t totalByteSent, int64_t totalBytesExpectedToSend) {
    // Tentukan jumlah byte yang sedang diunggah, jumlah total byte yang telah diunggah, dan jumlah total byte yang ingin diunggah. 
    NSLog(@"%lld, %lld, %lld", bytesSent, totalByteSent, totalBytesExpectedToSend);
};
OSSTask * putTask = [client putObject:put];
[putTask continueWithBlock:^id(OSSTask *task) {
    if (!task.error) {
        NSLog(@"upload object success!");
    } else {
        NSLog(@"upload object failed, error: %@" , task.error);
    }
    return nil;
}];
// Terapkan pemblokiran sinkron untuk menunggu tugas selesai. 
// [putTask waitUntilFinished]; 

Referensi

  • Untuk kode contoh lengkap terkait progress bar dalam pengunggahan objek, kunjungi GitHub.

  • Untuk informasi selengkapnya tentang cara menginisialisasi instans OSSClient, lihat Inisialisasi.