Android Download Manager Sınıfı ve Kullanımı :MobileCoder I MobileCoder.NET I Mobil Programlama I Android Programlama I Mobil Geliştiricilerin Buluşma Noktası I www.MobileCoder.Net

Android Download Manager Sınıfı ve Kullanımı

02.04.2015 tarihinde Android Programlama kategorisine eklenmiş, 193 views Kişi Okumuş ve 0 Yorum Yapılmış.

 

admAndroid Download Manager, uzun süren indirme işlemleri için çok fonksiyonlu bir uygulamadır. İndirme Yöneticisi, HTTP bağlantı kollarını ve indirmeyi başarıyla yürütür. Bundan emin olmak için  bağlantı değişikliklerini, sistem yeniden başlatıldıktan sonra kontrol edin. Elbette bu zorunlu değil fakat kesin sonuç için gerekli olduğunu belirtmeliyim.

 


 

ADM, indirme işlemi tamamlandığında, bir bildirim yoluyla etkinliği bildirecektir. Ayrıca indirme işlemlerini yürütmek için bağlantı koşullarını belirtebilirsiniz. İzin verilen ağ türü kayıtlı değilse, bildirim ile hatayı alırsınız – ” indirme isteği iptal ediliyor, indirmek için geçerli ağ türü kullanımı mümkün değil “.

Örnek bir büyük dosya indirmeyi kısıtlamak için WiFi bağlıyken sadece aşağıdaki kodu belirtebilirsiniz.

Request.setAllowedNetworkTypes  (DownloadManager.Request.NETWORK_WIFI);

 

Teorik olarak Android Download Manager’ı incelediğimize göre, artık ADM sınıfına giriş yapabiliriz.

Android Download Manager Sınıfı

Sınıf Genel Bakış

İndirme yöneticisi, uzun süreli HTTP ile işleyen bir indirme sistemidir. Müşteriler, URI belirli bir hedef dosyaya indirilebilir ve bu dosyayı isteyebilir. İndirme yöneticisi başarısızlık veya sonrasında bağlantı değişikliklerini, sistem yeniden doğmuş ise genelinde HTTP etkileşimleri yeniden deneniyor diyebiliriz. İndirme bakımı, arka planda indirmeyi yürütmeye devam edecek. Bu sınıfın örnekleri getSystemService ile elde edilmelidir.

Bu API sayesinde indirme talebinde olan uygulamalar için yayın alıcısına kayıt olmanız gerekecektir.

Summary

Nested Classes (İç içe Sınıflar)
class DownloadManager.Query Bu sınıfta, indirme yöneticisi sorgulayabilir ve filtreleyebilirsiniz.
class DownloadManager.Request Bu sınıfta ise, yeni bir indirme isteği için gerekli bilgiler bulunur.

 

Sabitler (Diziler)
String ACTION_DOWNLOAD_COMPLETE Yönetici tarafından istek yapılır.
String ACTION_NOTIFICATION_CLICKED Çalışan yada yönetici tarafından bir indirmeyada bildirim isteği yapılır.
String ACTION_VIEW_DOWNLOADS İndirme etkinliği için istek başlatır.
String COLUMN_BYTES_DOWNLOADED_SO_FAR Bayt sayısı kadar indirir.
String COLUMN_DESCRIPTION İstemci tarafından sağlanan açıklama.
String COLUMN_ID İstemcinin kullanıcı adı.
String COLUMN_LAST_MODIFIED_TIMESTAMP UTC Saat Evresi (Süresi)
String COLUMN_LOCAL_FILENAME İndirilen dosyanın yolu.
String COLUMN_LOCAL_URI İndirilen dosyanın url’si.
String COLUMN_MEDIAPROVIDER_URI İndirilen dosyanın MediaProvider’ekarşılık gelen url’si.
String COLUMN_MEDIA_TYPE İndirilen dosyanın medya tipi.
String COLUMN_REASON İndirmeyle alakalı ayrıntıları kapsar.
String COLUMN_STATUS Dizilerin mevcut durumu.
String COLUMN_TITLE İndirilen için verilen başlık.
String COLUMN_TOTAL_SIZE_BYTES Toplam indirilecek boyut.
String COLUMN_URI İndirilecek url.
int ERROR_CANNOT_RESUME           (Hatalar) Geçici hata oluştu, indirme devam edemiyor.
int ERROR_DEVICE_NOT_FOUND Depolama aygıtı bulunamıyor.
int ERROR_FILE_ALREADY_EXISTS Varolan dosya üzerine yazamıyor.
int ERROR_FILE_ERROR Zaman aşımı yada hata kodu.
int ERROR_HTTP_DATA_ERROR HTTP veri sorunu.
int ERROR_INSUFFICIENT_SPACE Zaman yetersiz, depolama alanı dolu.
int ERROR_TOO_MANY_REDIRECTS Çok fazla yönlendirme var.
int ERROR_UNHANDLED_HTTP_CODE HTTP kodu kabul edilemiyor.
int ERROR_UNKNOWN Belirlenemeyen bir hata.
String EXTRA_DOWNLOAD_ID Ekstra indirme kimliği.
String EXTRA_NOTIFICATION_CLICK_DOWNLOAD_IDS Ekstra tıklanan bildirim ve indirme kimliği.
String INTENT_EXTRAS_SORT_BY_SIZE Ekstra sıralama ve istek.
int PAUSED_QUEUED_FOR_WIFI Wi-fi bağlantsından dolayı durakladı.
int PAUSED_UNKNOWN Bilinmeyen sebepten dolayı durakladı.
int PAUSED_WAITING_FOR_NETWORK Ağ bağlantısından dolayı durakladı.
int PAUSED_WAITING_TO_RETRY Yeniden denemeden dolayı durakladı.
int STATUS_FAILED İndirme başarısız oldu.
int STATUS_PAUSED İndirme durakladı.
int STATUS_PENDING İndirme başlamak için bekliyor.
int STATUS_RUNNING İndirmeye çalışıyor.
int STATUS_SUCCESSFUL İndirme başarıyla tamamlandı.

 

 

Daha fazla ayrıntı için;

http://developer.android.com/reference/android/app/DownloadManager.html

ziyaret edebilir, kendinizi geliştirmeye devam edebilirsiniz.

 

 

Android Download Manager Uygulaması

12 <uses-permission android:name=”android.permission.INTERNET” /><uses-permission android:name=”android.permission.WRITE_EXTERNAL_STORAGE” />

 

 

 

 

 

kodsatir-1

kodsatir-2

 

kodsatir-3

kodsatir-4

 

kodsatir-5

kodsatir-6

kodsatir-7

 

kodsatir-7

kodsatir-8

 

kodsatir-9

kodsatir-10

kodsatir-11

Kodların ekran çıktıları aşağıdaki gibidir.

 kodsatir-12  kodsatir-13 kodsatir-14
 kodsatir-15  kodsatir-16  kodsatir-17

Önemli Not:  Download Manager aktivite olması için internet izni gerekiyor ve harici depolama verilerinizi kaydederken, burada android bildirim parçası dosyasına ekleme yapmanız gerekir.

Bu makalemde sizlere elimden geldiğince Android için Download Manager sınıfını anlatmaya çalıştım. Umarım faydalı olabilmişimdir.

 

Ceylan YILDIZ

 

Kaynaklar :

http://developer.android.com/reference/android/app/DownloadManager.html
http://www.mysamplecode.com/2012/09/android-downloadmanager-example.html

 

 

 

 

Yazar Hakkında

Yazar : Recep

Yazar Hakkında :

Yazarın Tüm Yazıları İçin Tıklayınız

Yorumlar

Sitemizde En Çok Okunan İçerikler

ANDROİD TELEFONLARA ROOT ATMA
ANDROİD TELEFONLARA ROOT ATMARoot Ne demek ? Bir android cihazı root etmek telefonun
fragment
ANDROİD FRAGMENT YAPISI VE KULLANIMIFragmentler Activity içerisinde yer alan kullanıcı ara yüzleridir. Fragment
ANDROİD TELEFONLARDA KONFERANS GÖRÜŞME
ANDROİD TELEFONLARDA KONFERANS GÖRÜŞMEANDROİD TELEFONLARDA KONFERANS GÖRÜŞME   Konferans görüşme çok fazla bilinmeyen androidin
Asp.NET’de web servis hazırlama ve Android de kullanimi  Web Servis Nedir ? Web üzerinden HTTP protokolü ile hizmet

Sitemizde En Çok Yorumlanan İçerikler

Rating Bar Kullanımı
Rating Bar KullanımıAndroid’de yıldız şeklinde derecelendirme çubuğu olarak kullanılır. Kullanıcı sürükleme
Android Wear Emülatör Kurulumu
Android Wear Emülatör Kurulumu   Android studio da geliştireceğimiz uygulamaların kontrolunü yapmak için emülatör
Resim Galerisi Oluşturma
Resim Galerisi OluşturmaAndroid Programlama – Resim Galerisi Oluşturma Bu yazıda, bir galeri
SQLite Database Browser Kullanımı
SQLite Database Browser KullanımıSQLite Database Browser Kullanımı Merhaba arkadaşlar, Android uygulamaları geliştirirken uygulama üzerindeki

Son Yapılan Yorumlar

  • Kategoriler

  • Son Yazılar

  • Takvim

    Kasım 2017
    P S Ç P C C P
    « Kas    
     12345
    6789101112
    13141516171819
    20212223242526
    27282930  
  • Etiketler

  • Son Yorumlar

    • Arşivler

    • Meta