0
在我的android應用程序是一個非常常見的場景,同時接收多個通知。 每個通知都可以有一個自定義聲音(由用戶設置)來識別何種類型的通知,而無需查看狀態欄。 問題在於,當同時發送多個通知時,聲音會自行重疊,除了徹底破壞該功能以識別剛聽到聲音的通知類型之外,其結果是令人不快的噪音。如何防止多個通知上的重疊聲音
有沒有辦法排隊通知聲音?另外,只有當另一個人完成播放他的聲音時,我纔可以發送通知嗎?
在我的android應用程序是一個非常常見的場景,同時接收多個通知。 每個通知都可以有一個自定義聲音(由用戶設置)來識別何種類型的通知,而無需查看狀態欄。 問題在於,當同時發送多個通知時,聲音會自行重疊,除了徹底破壞該功能以識別剛聽到聲音的通知類型之外,其結果是令人不快的噪音。如何防止多個通知上的重疊聲音
有沒有辦法排隊通知聲音?另外,只有當另一個人完成播放他的聲音時,我纔可以發送通知嗎?
如果您使用的是SoundPool類,則可以將MaxStreams()設置爲1以避免播放多個聲音。此外,Soundpool類允許您爲每個通知聲音設置優先級,因此它可以知道在有多個聲音嘗試同時播放時播放哪個聲音。不幸的是,Soundpool不支持任何類型的隊列。
或者,如果您使用MediaPlayer播放聲音,則可以使用onCompletionListener。但是,由於MediaPlayer旨在用於較長的音頻文件,因此不建議將MediaPlayer用於通知聲音。