2011-05-20 119 views
1

當事件發生時,我的處理程序會調用我的eventAlert()函數來彈出新的通知。不管是使用默認標誌還是使用自定義聲音設置,在發出聲音時都會重複聲音,就像使用FLAG_INSISTENT一樣。即使使用FLAG_ONLY_ALERT_ONCE。如果我用Uri.parse指定一個自定義聲音,它的行爲方式是一樣的。所有這些與振動相同。但是,如果進行自定義振動,使用振動器的vibreate(long [],int)函數調用它,它只會振動一次。我做錯了什麼,這裏最常犯的錯誤是什麼?我怎樣才能讓它振動並只用聲音提醒一次?我的eventAlert()被調用一次,我很確定。 thx爲您的幫助!通知的振動和聲音默認設置爲INSISTENT

+2

好吧,這隻發生在DEFAULT_LIGHTS也設置。當僅設置DEFAULT_VIBRATE和DEFAULT_SOUND(但DEFAULT_LIGHTS不是)時,它的工作原理應該如此,而不是重複。因此現在使用FLAG_SHOW_LIGHTS而不是DEFAULT_LIGHT作爲解決方法。 – IBoS 2011-05-21 16:06:48

+0

謝謝。幫助我很多 – 2011-10-07 07:41:46

回答

0

感謝您的回答,這段代碼是我們大多數人搜索創造了第一次通知時:

notification.flags = Notification.FLAG_ONLY_ALERT_ONCE | Notification.FLAG_SHOW_LIGHTS | Notification.FLAG_AUTO_CANCEL; 
notification.defaults |= Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE; 

FLAG_AUTO_CANCEL點擊它時,從通知欄/列表中清除通知。

相關問題