概要
iOS 10のUser Notification Frameworkを用いて、通知音をオリジナルの音声に変えてローカル通知を実装しています。
問題と解決したい事
オリジナルの音声を指定して、通知を鳴らしたところ、20秒ほどある音声が、5秒ほどで途切れてしまいます。
User Notification Frameworkを用いたローカル通知でオリジナルの音声を途中で途切れさせず、フルで鳴らすことは可能でしょうか?
環境
- iOS 10.0.3 (iPhone7の実機)
- Xcode 8.0
- Swift 3.0
ソースコード
swift
1// UNMutableNotificationContentの作成 2let content = UNMutableNotificationContent() 3content.title = "Hello!" 4content.body = "World!!" 5content.sound = UNNotificationSound.init(named: "original.wav") 6 7 8// 5秒後に発火するトリガー 9let trigger = UNTimeIntervalNotificationTrigger.init(timeInterval: 5, repeats: false) 10 11// identifier, content, trigger から UNNotificationRequest 作成 12let request = UNNotificationRequest.init(identifier: "teratail", content: content, trigger: trigger) 13 14// UNUserNotificationCenter に request を追加 15let center = UNUserNotificationCenter.current() 16center.add(request)
備考
- iOS 9以前でのUILocalNotificationで同様の実装をしたところ、最後までオリジナルの通知音が鳴ります。
(iOS 9.3のシミュレーターで検証)
- 再生しようとしている音声(original.wav)は29秒で、フォーマットはリニアPCM。
あなたの回答
tips
プレビュー