Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
- (void)applicationWillTerminate:(UIApplication *)applicationこのメソッドで Web サービスを呼び出そうとすると問題が発生します。応答がある場合もありますが、ない場合もあります。
- (void)applicationWillTerminate:(UIApplication *)application
とにかく、サーバー側でアプリケーションが閉じられているというステータスを取得するには?
applicationWillTerminate のドキュメントから:
このメソッドの実装では、タスクを実行して戻るまでに約 5 秒かかります。時間が経過する前にメソッドが戻らない場合、システムはプロセスを完全に強制終了する可能性があります。
私の推測では、Web サービスへの呼び出しが遅すぎるため、プロセスが強制終了されています。それはあなたの説明と一致します(通話が通じる場合もあれば、通じない場合もあります)。これを回避する方法は、アプリの全体的なアーキテクチャによって異なります。
ドキュメントへのリンク: https://developer.apple.com/library/ios/documentation/uikit/reference/UIApplicationDelegate_Protocol/Reference/Reference.html#//apple_ref/occ/intfm/UIApplicationDelegate/applicationWillTerminate :