2011-07-11 42 views
1

我有一個應用程序在後臺使用UILocalNotification提醒用戶在感興趣的事情發生時打開應用程序。通知播放聲音(使用soundName屬性指定)。這一切都可以,但是,當用戶按下屏幕鎖定按鈕時,有沒有辦法停止UILocalNotification聲音?屏幕鎖定按鈕不會沉默UILocalNotification聲音

我發現用戶習慣於按下此按鈕來靜音手機的鈴聲而不迴應它,他們希望對我的應用程序也這樣做。

回答

0

UILocalNotifications,就我所知,不會產生持久的聲音。如果屬於您的話,可能與Apple的人機界面指南有衝突。

然而,僅僅因爲你不應該並不意味着你應該不知道如何:

一種方法是改變您的通知的soundName財產在AppDelegate的方法applicationWillResignActive:

- (void)applicationWillResignActive:(UIApplication *)application { 
    self.myLocalNotif.soundName = @""; 
    ... 
    //clean up anything else before entering the background 
} 
+0

我不確定持續聲音是什麼意思?我的應用程序在後臺運行,UILocalNotification用於讓用戶將其帶到最前沿。 UILocalNotification指定要顯示的聲音名稱。如果屏幕鎖定按鈕被按下,我希望能夠關閉此聲音(即時),但我不明白這可以做什麼? – dchappelle

+0

聲音不應該足夠長以允許這種行爲。 Ergo,可能沒有一個(合法的)方法來做到這一點。 –

+0

聲音<30秒。我只是希望能夠在按下屏幕鎖定按鈕時立即將其關閉 - 就像按下屏幕鎖定按鈕後立即可以使單元鈴聲保持沉默一樣。 – dchappelle