SORU
14 EYLÜL 2010, Salı


applicationWillEnterForeground vs applicationDidBecomeActive, applicationWillResignActive vs applicationDidEnterBackground

Bir uygulama arka planda olmaktan uyanıyor ve etkin olması için hazırlık yapmak istediğinizde uygulamak için uygun bir temsilci mi?

vs fark Nedir applicationDidBecomeActive applicationWillEnterForeground?

Hangi uygulama ve temizlik için hazırlık için istediğiniz uyku ve veri kurtarmak için gittiğinde uygulamak için uygun bir temsilci mi?

applicationWillResignActive -- vs applicationDidEnterBackground fark Nedir?

Ayrıca, applicationWillResignActive gelen SMS veya bir telefon ama kullanıcı Tamam ' ı tıklatın seçer ve devam geldiğinde çağrılan fark ettim. Benim app bu gibi durumlarda herhangi bir işlem yapmak istemiyorum. Ben sadece kullanıcı uygulaması çıkmamış beri hiç ara temizlik olmadan çalışmaya devam etmek istiyorum. Yani, daha mantıklı sadece applicationDidEnterBackground temizlik iş yapar diye düşünüyorum.

En iyi uygulamalar sizin giriş uyanmak ve uyumak gibi SMS tarafından rahatsız olmak gibi olaylar göz önüne alındığında bir an önce uygulanması için hangi seçiminde takip seviniriz/çağırır.

Teşekkürler

CEVAP
25 Mart 2012, Pazar


Bir uygulama yani yeniden başlama (ya da sıçrama tahtası, uygulamayı değiştirme veya URL) uyanma zamanapplicationWillEnterForeground:denir. Sadece app kullanmak için hazır, arka plana koymak sonra olduğunda, sırasında yürütülürapplicationDidBecomeActive:birden çok kez çağrılabilir çıkışından sonra. Bu yaparapplicationWillEnterForeground:yeniden başlatmasını sonra sadece bir kez gerçekleşmesi için gereken kurulum için ideal.

applicationWillEnterForeground: denir:

  • uygulamayı yeniden hizmete
  • önceapplicationDidBecomeActive:

applicationDidBecomeActive: denir:

  • uygulama ilk application:didFinishLaunchingWithOptions: sonra açıldığında
  • sonraapplicationWillEnterForeground:işlemek için URL ise yok.
  • application:handleOpenURL: denir.
  • sonraapplicationWillResignActive:eğer kullanıcı bir telefon veya SMS gibi bir kesinti yok sayıyor.

applicationWillResignActive: denir:

  • bir telefon görüşmesi gibi bir kesinti var.
    • eğer kullanıcı bir çağrı alırapplicationDidEnterBackground:denir.
    • eğer kullanıcı çağrı yok sayarapplicationDidBecomeActive:denir.
  • ev düğmesine basıldığında veya kullanıcı anahtarları uygulamalar.
  • dokümanlar gerekir ki
    • Duraklat, devam eden görevleri
    • zamanlayıcılar devre dışı bırakın
    • duraklatmak bir oyun
    • OpenGL çerçeve oranlarını düşürmek

applicationDidEnterBackground: denir:

  • sonraapplicationWillResignActive:
  • dokümanlar gerekir ki:
    • paylaşılan kaynakları serbest bırakın
    • kullanıcı verileri kaydetmek
    • geçersiz zamanlayıcılar
    • Eğer uygulama iptal edildiğinde geri app durumunu kaydetmek.
    • UI güncelleştirmeleri devre dışı bırakın
  • için ne gerekiyorsa yap ve Yöntem dönmek için 5 saniyen var
    • eğer ~5 saniye içinde geri vermezsek uygulaması sonlandırıldı.
    • beginBackgroundTaskWithExpirationHandler: ile daha fazla zaman isteyin

The official documentation.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jonathan Morrison

    Jonathan Mor

    24 Mart 2010
  • kidrauhl

    kidrauhl

    15 Ocak 2007
  • Matthew Morrill

    Matthew Morr

    15 EKİM 2011

İLGİLİ SORU / CEVAPLAR