applicationDidEnterBackground
içinde bir şeyler yapmam gerekiyor. Ancak, hangi kullanıcı eyleminin "arka plana girmesine" neden olduğunu ayırt etmem gerekiyor: ekran kilidi veya ana sayfa düğmesine basın. Bu post - How to differentiate between screen lock and home button press on iOS5? dan bu kodu, kullanıyordumEkran kilidi ve ev düğmesi arasında ayrım yapma iOS7'ye basın
:
UIApplicationState state = [application applicationState];
if (state == UIApplicationStateInactive) {
NSLog(@"Sent to background by locking screen");
} else if (state == UIApplicationStateBackground) {
NSLog(@"Sent to background by home button/switching to other app");
}
O iOS6 üzerinde çalışıyor. ancak iOS7'de (hem cihaz hem de simülatör), kullanıcının eve veya kilit düğmesine basıp tıklamadığı her zaman UIApplicationStateBackground
'u alırım.
Birinin buna neyin neden olabileceği hakkında bir fikri var mı? Çok görevli arka plan işlemede iOS 7 güncellemesi var mı? Ya da benim uygulamamın bir kısmı (uygulamamın arka planı modu kapalı) mı?
Alternatif bir çözüm var mı?
'in olası bir kopyası çalışmıyor [Ekran yeri arasında ayrım nasıl yapılır? iOS5'de k ve ana ekran düğmesine basın mı?] (http://stackoverflow.com/questions/8303703/how-to-differentiate-between-screen-lock-and-home-button-press-on-ios5) – jmort253
Sanırım yeterince açıklanmadı. Bağlantınızdaki gönderiyi okudum, ancak bu iOS7'de artık çalışmıyor. Ben bir kopya olduğunu sanmıyorum. Ama neyse, açıklamak için sorumu düzenliyorum. – Perisheroy
Netleştirmek için iyi bir fikirdir, ayrıca düzenlemek, postanızı en üste geri döndürür, böylece başkaları tekrar görür. : D – jmort253