2012-06-05 33 views
1

我使用NSNotificationcenter來實現關於連接更改的事件監聽器。當用戶連接或斷開WiFi網絡時。當應用程序處於暫停模式時,是否可以將此通知發送到應用程序?暫停狀態下的應用程序的NSNotificationcenter

它必須可以做到這一點,想想Skype,例如它如何接收傳入的Skype電話?

這是我怎麼加我的觀察

[[NSNotificationCenter defaultCenter] addObserver:self 
             selector:@selector(reachabilityChanged:) 
              name:kReachabilityChangedNotification 
              object:nil]; 

回答

2

沒有它不可能對一個普通的應用程序。 Skype將被註冊爲voip類型的後臺應用程序,與普通應用程序相比,它在後臺執行的能力更強。 有4種類型的背景應用程序:音頻,voip,位置,newstand。

如果一個應用程序不是這些類型中的一個,那麼如果其暫停可以再次執行的唯一方式是通過用戶點擊應用程序的圖標或響應本地或遠程通知。

+0

真的嗎?這似乎與Android的限制。因此,iPhone上的應用程序無法在內部事件上「喚醒」嗎?這不是什麼本地通知?他們只在應用程序處於前景並處於活動狀態時才能工作? – user848106

+1

是的。和其他操作系統相比,它是非常有限的。本地通知與計時器事件不同 - 如果您處於前臺,您的應用程序將收到本地通知,如果您處於後臺或暫停狀態,用戶將實際看到通知。用戶永遠不會看到計時器事件,因此他們不一樣。不,你不能使用計時器事件喚醒你的應用程序。 – Gruntcakes

相關問題