Uygulama çoklu görevinin Android ve iPhone uygulamaları arasındaki temel farklar nelerdir?


9

Uygulama düzeyinde Android ve iPhone çoklu görev uygulamaları arasındaki temel farklar nelerdir?

(Bunu öznel bir fanboy tartışmasına dönüştürmeyelim lütfen?)

Yanıtlar:


6

Bu, sorunuzun bir cevabı değildir, ancak her iki işletim sisteminin de kaputun altında tamamen çoklu görev yaptığını [1] açıklığa kavuşturmaya değer (birden fazla işlem yapabildikleri ve çalıştıkları sürece).

Sorunuz açıkça, uygulama düzeyinde çoklu görevle ("bir uygulamayı başka bir uygulamayı çalıştırırken bırakabilir miyim?"), Bu terimin nispeten yeni bir kullanımıdır ve bazı belirginleri olsa bile her zaman iyi tanımlanmamıştır. örnekler (e-posta okurken Pandora dinlemek gibi). Özellikle, birçok uygulamanın, durumlarını kaydettikleri / geri yükledikleri sürece kendilerini kullanıcıya hiç durmamış gibi sunmak için arka planda çalışması gerekmez. Periyodik işlemler gerçekleştirmesi gereken uygulamaların (postaları kontrol etme veya alarmları açma gibi) arka planda sürekli olarak çalışması gerekmez; OS tarafından zaman zaman çağrılabilirler. Büyük sorun genellikle Pandora gibi arka planda iken sürekli CPU'ya ihtiyaç duyan uygulamalardır.

Genel olarak, Apple sürekli çalışan arka plan uygulamalarını engellemek veya önlemek için çok daha fazla çalıştı, oysa Android buna daha açık görünüyor. Ancak Apple, Pandora gibi uygulamaların arka planda çalışmasına izin verdiğinden ve Android, yoklama veya kaydedilen durum yeterli olduğunda gereksiz arka plan görevlerini caydırmak için daha zengin araçlar sağlar.

[1] http://en.wikipedia.org/wiki/Bilgisayar_multitasking


1
İyi bir nokta. Sorumu düzenleyeceğim.

3

Söyleyebildiğim kadarıyla.

İPhone çoklu görevleri çok daha kısıtlı. Çok görevli etkinlik aşağıdakilerden biri olmalıdır:

  • Arka plan sesi
  • VoIP
  • Arka plan konumu
  • Push bildirimleri
  • Yerel bildirimler
  • Görev tamamlama
  • Hızlı uygulama değiştirme

[Teşekkürler Gizmodo !]

Android ise bir PC'ye benzer şekilde gerçek çoklu görevlere izin verir.

Android hayranı olmakla suçlanmadan önce bir şey açıklayayım. İPhone çoklu görev modeli çoğu durum için fazlasıyla yeterlidir ve Android sistemine eşlik eden birçok sorunu (yani bellek sıkıntısı) önler.


Gerçek çoklu görev? WebOS veya Symbian halkının aynı fikirde olacağını sanmıyorum ...
Ivo Flipse

2

Android, bir PC'den farklı bir uygulama seviyesi çoklu görev kavramına sahiptir. Veriler, verilerin nasıl görüntüleneceği ve verilerin nasıl çalıştırılacağı arasında daha fazla bağlantı kesilmesi vardır.

Bir kerede yalnızca bir uygulama görünümüne sahip olabilirsiniz, ancak verilerdeki işlem arka planda olabilir. Bu, uygulama geliştiricilerinin uygulamalar arasında geçiş yaparken, uygulamalardan çıkarken ve yeni uygulamalar başlatırken masaüstü gibi hissetmelerini zorlaştırır. Bazen bir uygulamayı öldürmek imkansız hisseder, ancak bazen bir göreve geri dönmenin imkansız olduğunu hisseder. Uygulama geliştiricisinin bunu nasıl yaptığına bağlıdır.

Aynı anda devam eden çok sayıda arka plan işleminiz olabilir ve bunlar masaüstü uygulamaları gibi planlanır. Linux çekirdeği, hangilerinin bellek ve CPU kaynakları alacağına nasıl öncelik verileceğini seçecektir. Telefon hafızasının bittiğine karar verdiğinde, daha fazla hafıza elde etmek için bir şeyler öldürmeye başlayacaktır. Bu, Linux veya diğer işletim sistemlerinin çoğu normalden farklı bir şekilde yapılır.

Bir programın verileri her zaman mevcuttur. Uygulamanın verilere erişme izinleri olduğu sürece kullanılabilir. Kullanılabilir olması için arka planda çalışan bir hizmete ihtiyacınız yoktur.

Apple'ın çoklu görevler yapabileceğiniz çok özel yolları vardır. Bunlar, Android'in izin verdiği yolların bir alt kümesidir. Yalnızca belirli uygulama türleri arka planda çalışabilir ve bunun için özel olarak programlanması gerekir.

Masaüstü her ikisinden de çok farklı. Her uygulamanın görünümü, verileri ve veri işleme mantığı genellikle birbirine kilitlenir. WebOS, Symbian ve Maemo / Meego'nun mobil cihazlarda buna örnek olduğunu söyleyebilirim. Bir uygulama veri ve arka plan işlemlerini diğer "görünümlere" maruz bırakırsa, çok özel bir uygulama olma eğilimindedir.


Kayıt için, Linux'un tüm enkarnasyonlarında bir OOM Killer var, Android'e özgü değil. Ancak, bir bilgisayarda, bir şeyleri öldürmeye başlamadan önce takas alanınızı ve fiziksel RAM'inizi tüketmeniz gerekir.

Gerçekten değil, bkz: wiki.kldp.org/wiki.php/AndroidPortingOnRealTarget#s-3.1.5 Android'in Linux olmaması için zor olan şeylerden biri. Dalvik'i bir stok çekirdeğinde çalıştırmayı deneyin, bu ilerlemenizi engelleyecektir.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.