イベントが始まろうとしているときにアプリに通知を追加する方法を研究しています。他のジャスト カレンダー アプリはこの機能を提供しますが、私の調査では、彼らがこれをどのように達成するかについて困惑しています。
Apple docs によると: 実装するのにより多くの実行時間を必要とするタスクの場合、中断することなくバックグラウンドで実行するには、特定のアクセス許可を要求する必要があります。iOS では、特定の種類のアプリのみがバックグラウンドで実行できます。
- 音楽プレーヤー アプリなど、バックグラウンドでユーザーに可聴コンテンツを再生するアプリ
- ナビゲーション アプリなど、常にユーザーに現在地を知らせるアプリ
- Voice over Internet Protocol (VoIP) をサポートするアプリ
- 新しいコンテンツをダウンロードして処理する必要がある Newsstand アプリ
- 外部アクセサリから定期的にアップデートを受信するアプリ
わかりました、まあ、カレンダー アプリはこれらのどれでもありません。アプリが定期的に起動してカレンダーをチェックするようにローカル通知をスケジュールする場合、これまでに読んだことによると、それだけでは十分ではありません。位置監視オプションを使用するだけでは十分ではありません。ユーザーが一日中オフィスに座っている場合はどうなりますか?
カレンダーのイベントは、電話以外の他のソースから追加/削除できることは明らかなので、アプリの起動時に一連の通知を設定することは解決策ではありません.
カレンダー アプリはどのようにしてイベント前の通知を行いますか? 私はApp Storeからいくつかのカレンダーアプリを持っていますが、それらはこれを行うので、それができることを知っています. 私のアプリは App Store でも受け入れられる必要があるため、解決策として VoIP を装うことはできません。
追加情報:さらに調査した結果、これを実行しているアプリは、シャットダウンされたときに更新されませんが(当然)、バックグラウンドで更新されます。バックグラウンド プロセスを長時間 (たとえば一晩中) 維持する方法については、まだよくわかりません。