マルチタスク対応の目覚まし時計アプリを作っています。ただし、sdk のいくつかの制限に悩まされています。
ユーザーが設定したプロパティでアラーム時刻が来るたびに、選択したアラーム音を再生する必要があります。これらのプロパティ: - アラーム音は、ユーザーの iPod ライブラリからの音楽、およびアプリケーション バンドル内のいくつかのサウンド ファイルにすることができます。- アラーム音は、プログレッシブとして再生するように設定できます。
さらに、アラーム音は、ユーザーがアプリをキャンセルまたはウェイクするまで、バックグラウンドでループ再生する必要があります。
私の頭に浮かんだ最初の論理的なことは、ローカル通知を使用することでしたが、ローカル通知を使用すると、アプリバンドル (iPod 音楽ではなく) にのみ含まれ、最大 30 秒の長さのサウンドファイルを再生できます。また、ユーザーが通知アラートをキャンセルしても通知されず、iOS はサウンドの再生を停止するだけです。
現在、バックグラウンドオーディオ再生オプションを使用して、アラーム時間まで無音で再生し、アラーム音を再生しながらローカル通知を音なしで表示することを考えています。しかし、ユーザーがローカル通知アラートをキャンセルしてオーディオの再生を停止したかどうかを知るにはどうすればよいでしょうか。ただし、Apple のドキュメントによると、バックグラウンド オーディオを再生しているアプリでは、iPod の音楽再生 (および共有リソースの使用) はまだ許可されていません。
また、他のアプリがこれらの機能の一部をどのように実行しているのか理解できません。たとえば、Night Stand HD はバックグラウンドで iPod の音楽を再生でき、「プログレッシブ アラーム クロック」という名前のアプリはバックグラウンドでプログレッシブ サウンドを再生できます。
これらの問題に関するアイデアや提案はありますか? あなたの助けは大歓迎です