All Products
Search
Document Center

Object Storage Service:Unduhan rentang (Android SDK)

Last Updated:Nov 30, 2025

Anda dapat melakukan unduhan rentang untuk mengunduh bagian tertentu dari suatu objek.

Catatan penggunaan

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

Contoh

Kode contoh berikut menunjukkan cara melakukan unduhan rentang untuk mengunduh bagian tertentu dari suatu objek:

// Membuat permintaan untuk mengunduh file.
// Tentukan nama bucket (misalnya, examplebucket) dan path lengkap objek (misalnya, exampledir/exampleobject.txt). Path lengkap objek tidak boleh mencakup nama bucket.
GetObjectRequest get = new GetObjectRequest("examplebucket", "exampledir/exampleobject.txt");

// Mengatur rentang.
get.setRange(new Range(0, 99)); // Mengunduh 100 byte data dari byte 0 hingga byte 99. Rentang dimulai dari byte 0.
// get.setRange(new Range(100, Range.INFINITE)); // Mengunduh data dari byte 100 hingga akhir file.

OSSAsyncTask task = oss.asyncGetObject(get, new OSSCompletedCallback<GetObjectRequest, GetObjectResult>() {
    @Override
    public void onSuccess(GetObjectRequest request, GetObjectResult result) {
        // Permintaan berhasil.
        InputStream inputStream = result.getObjectContent();

        byte[] buffer = new byte[2048];
        int len;

        try {
            while ((len = inputStream.read(buffer)) != -1) {
                // Memproses data yang diunduh.
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    @Override
    public void onFailure(GetObjectRequest request, ClientException clientExcepion, ServiceException serviceException) {
        // Permintaan gagal.
        if (clientExcepion != null) {
            // Terjadi exception pada client, misalnya error jaringan.
            clientExcepion.printStackTrace();
        }
        if (serviceException != null) {
            // Terjadi exception pada layanan.
            Log.e("ErrorCode", serviceException.getErrorCode());
            Log.e("RequestId", serviceException.getRequestId());
            Log.e("HostId", serviceException.getHostId());
            Log.e("RawMessage", serviceException.getRawMessage());
        }
    }
});

Referensi

  • Untuk kode contoh lengkap yang digunakan untuk melakukan unduhan rentang, kunjungi GitHub.

  • Untuk informasi selengkapnya tentang operasi API yang dapat dipanggil untuk melakukan unduhan rentang, lihat GetObject.

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