項目中遇到需要自定義通知聲音的需求,以前沒做過删窒,就查了下官方文檔椅亚,就像文檔上說的民傻,實現(xiàn)起來確實挺簡單场斑,就整理下當(dāng)做備忘吧。
關(guān)于推送薯酝,官方文檔浩村、各種第三方推送文檔都很全心墅,就跳過了。
由于自定義通知聲音還是由 iOS 系統(tǒng)來播放的策肝,所以對音頻數(shù)據(jù)格式有限制拙毫,可以是如下四種之一:
- Linear PCM
- MA4 (IMA/ADPCM)
- μLaw
- aLaw
對應(yīng)音頻文件格式是 aiff
,wav
,caf
文件,文件也必須放到 app 的 mainBundle
目錄中筛璧。
自定義通知聲音的播放時間必須在 30s 內(nèi),如果超過這個限制,則將用系統(tǒng)默認(rèn)通知聲音替代。
可以使用 afconvert
工具來處理音頻文件格式檩小,在終端中敲入如下命令就可以將一個 mp3
文件轉(zhuǎn)換成 caf
文件:
$ afconvert unbelievable.mp3 unbelievable.caf -d ima4 -f caff -v
轉(zhuǎn)換完成后就可以將 unbelievable.caf
這個文件拖入 Xcode 工程中,編譯運行項目在真機(jī)上烟勋。
將 unbelievable.caf 文件拖入工程中
發(fā)送推送通知時规求,只需配置 sound
字段的值為導(dǎo)入到工程中的音頻文件名筐付,這里即就是 unbelievable.caf
。
測試~~阻肿,完美M咂荨!丛塌!收到推送時较解,通知聲音就是我們自定義的聲音了。
收到推送信息