にNSURLConnectionを呼び出し、要求がクライアント側で呼ばれるが、その私のサーバ側になっていません。私は<code>applicationWillTerminate</code>方法に<code>NSURLConnection</code>経由<code>NSURLRequest</code>を送信しようとしているapplicationWillTerminate
- (void)applicationWillTerminate:(UIApplication *)application
{
[self sendRandomRequestToServer];
}
私は、終了プロセスを殺すためにその
は私が右アム思いますか?
どうすればこの問題を解決できますか?
ありがとうございます!
UPDATE - 私は5秒を知って
Appleは私が実験してきたあなたを与えること -
私はメインスレッドで無限while
ループを実行し、その2分のために実行を継続しようとしましたwillTerminate
に!
また、afterDelay
0.1とdispatchAfter
0.1をwillTerminate
で使用し、両方とも呼び出されなかったバックグラウンドスレッドのメソッドを呼び出しました。
だから私はあなたがapplicationWillTerminate
からバックグラウンドでコードを実行するべきではありません「5秒」ルール
'applicationWillTerminate'が実際に呼び出されたことを確認しましたか? – Code
はい、私は、NSLogのapplicationWillTerminateで仕事をしました。 – ozd
5秒ルールは、UIApplicationExitsOnSuspendをtrueに設定した場合にのみ適用されます。これにより、ユーザーが離れたときにアプリがすぐに終了するようになります。通常、アプリケーションの終了は、システムがリソースに必死である場合にのみ発生します。そのため、その時点で何らかの作業をブロックする必要はありません。アプリがバックグラウンドに移動したときにリクエストを行います。 – dgatwood