2012-04-10 49 views
0

我在iOS中實現了推送通知。我希望我的應用程序在發送推送消息時播放音樂(大約15秒)。我目前正在收到推送消息,並且只有當應用程序處於前臺時纔會播放音樂。 如果應用程序在後臺,它會顯示通知,當我點擊它時,它會播放音樂。在iOS中收到推送時調用應用程序播放音樂

但是,如何獲得自動播放音樂的功能?我認爲這可以做到,因爲在iOS中,音頻應用程序可以在後臺運行。所以我只想在應用程序轉到後臺時播放音樂,並且它會收到推送。

任何人都可以幫助我嗎?

感謝, 尼西

+0

我會立即卸載該播放的音樂在將任何應用程序。假設你已經安裝了10個應用程序,這樣做了嗎?你可能想重新考慮你的設計。 – Almo 2012-04-10 17:17:22

+0

我沒有解釋應用程序的內容。這是一個用例,如果手機丟失(尖叫),這僅用於內部分發:-)我相信你會改變你的意見;)你有一個解決方案,可以做到這一點? – nithinreddy 2012-04-11 02:37:43

+0

你是對的;你已經找到了一個很好的用法。 :)推送通知不是我在我的iPhone編程中使用的,所以我害怕我無法提供幫助。 – Almo 2012-04-11 11:52:37

回答

0

是的,有兩種方法可以做到這一點。

iOS 7之前的傳統方式是註冊音頻播放背景模式並永遠播放靜音,這會讓您的應用程序長時間在後臺運行,直到用戶殺死它,或者它被殺死由於內存不足。

這種方式有許多缺點,用戶必須啓動應用程序一次,以便您可以開始播放聲音,並且每次關閉iPhone時,用戶需要在打開iPhone時重新啓動應用程序。

此外,這將消耗大量的電池。對於iPhone 5,每天20%-30%。

iOS 7.0之後的新方法是利用後臺提取和遠程通知,您可以在執行後臺提取時播放聲音,後臺提取運行30秒時間。您也可以通過推送通知觸發後臺提取。

這是關於背景的文章提取和推送通知http://www.objc.io/issue-5/multitasking.html

相關問題