分類
macOS Swift

UserNotifications 使用用戶創建的聲音作為提示音

使用自定義聲音作為通知提示音

在 iOS 10 以後,iOS 使用了全新的 UserNotifications 作為通知 API,這允許開發者使用 圖片、視頻、聲音 等富媒體作為通知內容,同時進一步地,你還可以使用 通知內容擴展 來自定義通知的大小和內容佈局。
如果要自定義通知的提示音,那麼你可以給 UNNotificationContent聲音 屬性添加 UNNotificationSound 實例:

由高亮行可以看出,自定義提示音的具體位置是由 iOS 系統自動指定的。眾所周知,這些自定義的提示音必須預先放置在 app 的 主束 裡,長度不能超過 30小號,否則就會被系統提示音所替代。

那麼 ,有沒有什麼辦法,能讓 app 以用戶提供的聲音作為通知提示音呢?

使用用戶自定義的聲音作為通知提示音

用戶自定義的聲音,這裡我們指用戶從其他 app 導入的聲音、從網站上下載的聲音,或者是我們 app 自己後期從服務器下載的提示音。那麼,有沒有辦法,不把提示音預置在 app 裡,而是後期加載呢?

這一點在網絡上很少有人提及,其實是可以的。如果你去仔細閱讀官方文檔,那麼你會在這個頁面發現這樣一句話:

自定義聲音文件必須位於你的可執行文件的主束或 Library/Sounds 您的應用程序的容器目錄的目錄.

也就是說,除了預置在 app 的 主束 里之外,我們也可以把下載的聲音放置在 圖書館/聲音 這個目錄裡!

這樣一來,下載或者用戶導入的聲音就可以作為提示音使用了! ——當然,不要忘記也要遵循 30s 內這個規定。

同時,由於 api 限制,名稱最好不要重複,不然就說不好系統用哪個聲音作為提示音了。

參考文獻

UILocalNotification: 播放保存在文檔目錄自定義音頻文件

本文由 落格博客 原創撰寫:落格博客 » UserNotifications 使用用戶創建的聲音作為提示音

轉載請保留出處和原文鏈接:https://www.logcg.com/archives/2984.html

通過 落格博客

如非聲明,本人所著文章均為原創手打,轉載請註明本頁面鏈接和我的名字。

發表評論

您的電子郵件地址不會被公開. 必填字段標 *