2016-06-30 12 views
0

私はかなりユニークな状況です:アプリが終了した後にデータをアップロードする

私のiOSアプリには、Wi-Fi経由で接続されているコンパニオンハードウェアがあります。 Wi-Fiはローカルネットワークを構築します。つまり、電話機が接続されているときは、外部のインターネットアクセスはありません。

単純なREST APIを使用して作成した集中管理されたサーバーにアナリティクスを投稿したいと考えています。問題は、ユーザーがネットワークに接続している間にアプリケーションを開いたり閉じたりすることができることです。つまり、インターネットにアクセスできない場合、アプリが終了している可能性があります。 。

私は

-(void)applicationWillResignActive(UIApplication *)application 
OR 
-(void)applicationDidEnterBackground:(UIApplication *)application 
OR 
-(void)applicationWillTerminate:(UIApplication *)application 

の内のコードを実行した場合、ユーザーはまだいない外部からのアクセスでのWi-Fiネットワークに接続されているとき、彼らは唯一と呼ばれることがあります。

このような状況でも、シンプルなデータをサーバーにアップロードする方法はありますか?事実の後にこれを行うための素早いバックグラウンドプロセスをスピンアップする方法はありますか?

ありがとうございます!

答えて

0

NSURLSessionを使用すると、バックグラウンドからアップロードできます。アップロードタスクを送信すると、アプリはバックグラウンドに移動したり終了したりしても実行し続けます。

+0

アプリが終了したときにWi-Fiに接続されているとどうなりますか?私は何とかリクエストに再試行しなければなりませんか?それとも、それは汚れているとマークされ、それを再試行する(おそらく、私はとにかく質問します!)? – AlexKoren

+0

私はそれをテストしていないが、私はシステムが接続の損失を処理し、ネットワーク接続が再確立されたときに接続を開始/再開すると考えている。 (あなたのインターネットに接続されていないWiFiに接続している間は、ハードに失敗しない限り)。 –

関連する問題