アプリの基本的な通知を完了しました。通知に効果音を追加したい。
UILocalNotification *localNotification = [[UILocalNotification alloc] init];
if (localNotification == nil)
return;
localNotification.fireDate = [NSDate date];
//localNotification.timeZone = [NSTimeZone defaultTimeZone];
localNotification.alertBody = msg;
localNotification.soundName = @"Morse.aiff";
[[UIApplication sharedApplication] presentLocalNotificationNow:localNotification];
効果音を追加するには?
ローカルおよびプッシュ通知プログラミングガイドの カスタムアラートサウンドの準備 を読むことから始めることをお勧めします(カスタムサウンドが30秒より短いことを確認してください)。
デフォルトのサウンドを使用する場合:UILocalNotificationDefaultSoundName
を使用します(Euroboyの提案による)
更新:この問題が発生しているのはあなただけではないようです。可能な(しかしもちろん良いとは言えない)解決策が説明されています ここ 。
私の場合、問題はUIUserNotificationTypeSoundへの登録を忘れたことでした。 UIUserNotificationTypeSoundに登録しないと、アプリの通知設定で[サウンド]オプションを使用できなくなります。
これは、ローカルおよびリモート通知プログラミングガイドのコードスニペットです(tiloはすでに上記のリンクを追加しています)。
UIUserNotificationType types = UIUserNotificationTypeBadge |
UIUserNotificationTypeSound | UIUserNotificationTypeAlert;
UIUserNotificationSettings *mySettings = [UIUserNotificationSettings settingsForTypes:types categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:mySettings];
そのコードを追加した後、アプリの通知設定でサウンドオプションを有効にできます。
ローカル通知音としてmp3ファイルを再生しようとしたときに同様の問題が発生しました。音は30秒より短く、束ねられており、表面上はすべてが規則正しく見えます。数時間後、私は問題がオンラインのmp3カッターツールによって引き起こされたことに気づきました。私はより良いエディターを見つけました、そしてファイルは通知で再生可能になりました。
Mp3ファイルを何らかのツールで編集した場合、編集ツールで何かが見落とされた可能性があります。
あなたの問題はまた、サウンドエディタ、またはサウンドフォーマットコンバータによって引き起こされている可能性があります。
リソースファイルでターゲットメンバーシップが選択されていることを確認する必要があります。私の場合、それはチェックされておらず、通知は依然としてシステムのデフォルトのものでした。
ローカル通知でカスタムサウンドを再生するための本当に簡単な解決策を見つけました。 1.通常、サウンドはaiff形式で完全に機能します。 2.カスタムサウンドを追加した場合、このサウンドが「ビルドフェーズ」に追加されているかどうかを確認してください。3。カスタムサウンドはすでに追加されていますが、基本的なシステムアラートが再度再生されますか? -デバイスからアプリケーションを削除して再起動します。デバイスを接続し、アプリケーションを再度コンパイルした後。 4.利益!動作します!
PS:これはiOS 10をお持ちの場合の解決策です。これがシステムバッグであることを私はどのように理解していますか?.