これは私たち全員が何度も疑問に思ってきた質問であり、誰も良い答えを持っていないようです.
DataMan のようなアプリは、バックグラウンドで無期限に定期的に実行され、アプリ ストアに登録されるのはなぜですか?
このアプリでは、ユーザーは「正確なデータ追跡」をオンにして、アプリがユーザーの操作なしでデータ使用カウンターを更新する頻度を選択できます。間隔は、1 分ごと、10 分ごと、20 分ごとです。
はい、バックグラウンド プロセスに関するすべての関連する Apple ドキュメントを読み、それらの多くを正常に実装しました。また、この古い投稿の内外を調査しましたが、これらの「抜け穴」の多くにパッチが適用され、とにかく文書化されたものがより適切に機能するようになったため、十分に古くなっています。
アプリを VOIP アプリとして登録し、一定の間隔でキープアライブを要求することは非常にうまくいきましたが、VOIP アプリでない限り、app-store-ok ではありません (DataMan はそうではありません)。さらに、VOIP キープアライブの登録は、実際には DataMan と同じ動作を示すわけではありません...VOIP キープアライブ呼び出しは、多少ランダムな間隔で、または少なくともクロック タイムに同期せずに選択した頻度で行われます。DataMan は、実際にはクロックで義務付けられた間隔に合わせて、:10、:20、:30 の分マークなどでデータ カウンターを更新します。
何か案は?