İçerik sağlayıcıların hizmetleri kadar basit bir şekilde etkileşimde bulunmanın bazı yolları var mı?Hizmetlerle etkileşimde bulunmanın basit yolları?
Örneğin, içerik sağlayıcılarıylanumaralı telefonu kullanıyoruz: Context
varsa, verileri sorgulamak kolaydır. Çapraz işlem çağrılarının ayrıntıları hakkında endişelenmenize bile gerek yok (ContentProvider
).
Servislerle bunları bağlamak zorundasınız, bağlantı kurulmasını bekleyin, ardından belleği sızdırmak istemiyorsanız bunları çözdüğünüzden emin olun. Daha da kötüsü, uzak servisler için AIDL ile uğraşmanız gerekiyor.
bu örneği alınması:
Bir dosya indirici modülü var. Şu anda iki yaklaşım var: içerik sağlayıcı veya servis. Her yeni yüklemeyi başlatmak için her ikisi için de kolaydır:
- Service:
startService()
. Sadece bir bağlama ihtiyacın var. - İçerik sağlayıcısı:
getContentResolver()
ve yeni indirme sırasına ekleyin. Ayrıca sadece bir bağlama ihtiyacınız var.
Ancak indirmeler devam ederken, bazı bilgileri (ortalama hız, yüzde yapıldı…) elde etmek istiyorum. Sorun şu: Bir içerik sağlayıcı ile iletişim kurmak daha kolay. Yine sadece bir bağlama ihtiyacınız var ve istediğiniz bilgiyi sorgulayın. Bir hizmet durumunda, onu bağlamanız, açmanız veya kendi AIDL'nizi (uzak bir hizmetse) oluşturmanız gerekir…
Yukarıdaki soruya örnek olarak bir hizmetin doğru olduğu için bu soruyu soruyorum. Bir içerik sağlayıcısının yaklaşımı, en azından adı nedeniyle.
Teşekkürler, ben bunu öneririm
"Ortalama hız", "yüzde yüzdesi" bilgileri ile ne yapacaksınız? – Squonk
@Squonk Kullanıcıların bilmek istediği durumlarda bunları kullanıcı arayüzünde görüntülemek istiyorum. –