2

バックグラウンドでサーバーにいくつかの写真をアップロードしています。10分後にアプリを閉じたい。しかし、私のアプリは閉じておらず、バックグラウンドで一時停止モードになっており、アプリアイコンを押すと、アップロード操作が再びフォアグラウンドで開始されます。私は以下のコードを使用しました:

bgTask = [app beginBackgroundTaskWithExpirationHandler:^{
            // Clean up any unfinished task business by marking where you.
            // stopped or ending the task outright.
            [app endBackgroundTask:bgTask];
            bgTask = UIBackgroundTaskInvalid;
        }];

        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

            // Here goes your operation
            // done!
            upload_photo();

            dispatch_async(dispatch_get_main_queue(), ^{
                if (bgTask != UIBackgroundTaskInvalid)
                {
                    // if you don't call endBackgroundTask, the OS will exit your app.
                    [app endBackgroundTask:bgTask];
                    bgTask = UIBackgroundTaskInvalid;
                }
            });
        });

私の質問:10分後にアプリを閉じるにはどうすればよいですか(アップロードタスクが完了したかどうか)?

前もって感謝します。

4

0 に答える 0