Hizmetler ve yayın alıcıları hakkında işitmeye devam ediyorum . Aralarındaki fark nedir ve Android telefonumun çalışmasını benim açımdan nasıl etkiler?
Hizmetler ve yayın alıcıları hakkında işitmeye devam ediyorum . Aralarındaki fark nedir ve Android telefonumun çalışmasını benim açımdan nasıl etkiler?
Yanıtlar:
Android uygulamalarının üç tür bileşeni vardır. Genel olarak, kullanıcılar bunları bilmelerine gerek yoktur: uygulama yazarlarının uygulamalarına belirli davranışları programlamasının bir yoludur. Ancak uygulamalarınızın bir görev yöneticisi gibi davranışlarını yakından izliyorsanız veya Tasker gibi bir uygulama ile işleri otomatikleştiriyorsanız, bunların sisteme nasıl bir araya geldiğini anlamak yardımcı olur.
Bir etkinlik bileşeni en tanıdık türüdür: tam ekran ya da iletişim boyutunda ya: o sizin görebileceğiniz bir pencere. Bir etkinlik yalnızca ekranda görüntülenirken çalışır. Etkinlikten ayrıldıktan sonra, Android bu uygulamayı yeniden başlatmaya hazır halde tutacaktır, ancak etkinlik çalışmaz, yani pil veya ağ kullanmaz. Bir uygulama bir niyet kullanarak bir etkinlik başlatır . Amaç, hangi aktivitenin başlatılacağını açıkça belirtebilir veya gerçekleştirilecek bir eylemi belirleyebilir (belirli bir dosyayı açmak gibi). Birden fazla etkinlik amacı "işleyebiliyorsa", bir tane seçmenizi isteyen iletişim kutusunu görürsünüz.
Bir hizmet başka bir uygulama bileşenidir. Başka bir bileşen (belki bir etkinlik veya başka bir hizmet) bir hizmeti başlattıktan sonra, kendini durdurana kadar arka planda çalışır. Bu, bir hizmetin telefonunuzu uyanık ( uyanıklık kilidi kullanarak ), pili bitirmesi veya ekranda hiçbir şey görünmeden çok sayıda ağ verisi kullanması anlamına gelir.
Uygulamalar, sunucudan dosya indirme veya e-posta kontrolü yapma veya konumunuzu kontrol etme gibi arka planda uzun süren işlemler yapmak için hizmetleri kullanabilir. Hizmetler doğrudan sizinle görünmese veya sizinle etkileşime girmese de, "Çalışan uygulamalar" listesinde görünmeye devam eder. Gönderen Ayarlar uygulamasında, seçim Uygulamalar veya Uygulamaları yöneticisi ve sonra Koşu . Bir hizmeti bu şekilde durdurabilirsiniz, ancak genellikle gerekli değildir. Hizmetler doğrudan görünmediği için, Android onları etkinliklerden daha az önemli görüyor, bu nedenle telefonunuzun daha fazla belleğe ihtiyacı olduğunda ilk öldürülecekler.
Yayın alıcıları üçüncü bileşen türüdür. Hizmetler gibi, bunlar yalnızca arka planda bulunur ve sizinle doğrudan etkileşime girmez. Ancak hizmetlerin aksine, çalışmaya devam edemezler veya uzun görevler gerçekleştiremezler: olaylara yanıt vermek için varlar. Faaliyetlerden ve hizmetlerden farklı olarak, bir seferde birden fazla yayın alıcısı başlatılabilir.
Bir bileşen , büyük olasılıkla tek bir uygulamaya, ancak belirli bir uygulamayı belirtmeden, genellikle bir amaç yayınlar . Bu durumda, amaç genellikle bataryanın bitmesi gibi olan bir olayı temsil eder. Sistem, bir ilgi kaydetmiş (bir niyet filtresi kullanarak ) tüm yayın alıcılarını bulur ve her birini sırayla çalıştırır. Her yayın alıcısı, örneğin bir bildirim oluşturarak hemen tepki verebilir veya daha fazla işlem yapmak için bir hizmet veya etkinlik başlatabilir. Yayın alıcısı olayı ele alır almaz durdurulur ve benzer başka bir olay yayınlanana kadar tekrar çalışmaz.
Birlikte çalışan üç bileşenin de bir örneği, Google Play'den bir uygulama indirdiğiniz zamandır. İlk olarak, Google Play etkinliği, indirilecek içeriği seçmeniz için görsel arayüz sağlar. Uygulamaların listesi tek bir etkinlik olabilir; "yükle" düğmesini tıkladığınızda, onay veya ödeme iletişim kutusunu göstermek için başka bir etkinlik başlatılır. Onayladığınızda, iletişim etkinliği bir hizmeti başlatır. Hizmet, etkinlik sona erdiğinde ve artık çalışmadığında bile içeriği indirmeye devam edecektir.
Ancak yeni uygulama indirilirken telefonun İnternet bağlantısı kesilebilir. Böyle bir durumda, Google Play'in indirme hizmeti, ağ bağlantısı değişiklikleriyle ilgilendiğini söylemek amacıyla bir filtre ile bir yayın alıcısı kaydeder ve ardından hizmet kendini durduracaktır. Telefon İnternete bağlandığında, sistem bir olay yayınlar. Android, bu etkinliği bekleyen diğer yayın alıcılarıyla birlikte Google Play hizmetinin kayıtlı yayın alıcısını başlatacaktır. Bu durumda, yayın alıcısı indirme hizmetini tekrar başlatacaktır. Hizmet, indirme işlemi ilerledikçe bildirimler oluşturur ve bittiğinde, diğer uygulamalara yeni paketin yüklendiğini bildirmek için kendi yayınını gönderir ve ardından kendini durdurur. Buna karşılık, diğer uygulamalardan yayın alıcıları başlayacak,
Özetle:-