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.