Skip to content
Aasim's Web Corner
Aasim's Web Corner

Ink is better than the best memory.

  • Odysseys & Artistry
    • Saunterer Soul
    • My Poetry
    • My Sketch Work
  • Project Management
    • Agile & Frameworks
    • PMP Certification
  • Digital Diary
    • History
    • Islam
    • Life Around Us
    • My Bookshelf
  • My Tutorials
    • Amazon Kindle
    • Android
    • Aspect Oriented Programming
    • BlackBerry
    • Code Repositories
    • iOS
    • Java
    • JavaScript
    • Linux
    • Random Tips
Connect with me
Aasim's Web Corner

Ink is better than the best memory.

Background processing in iOS - AasimNaseem.com

Background processing in iOS

Aasim Naseem, June 7, 2012 | Read Count: 13,424April 27, 2025
Category: My Tutorials > iOS

Hello, everyone.
Hope things are going well around you.

I’m working on an iOS application and facing an issue regarding network calls. I need your kind suggestions in incase I’m not doing the thing in the right way.

Scenario: I want to download one or more zip files from some URLs. The files may have different sizes, ranging from 6MB to 150MB. I’m using ASIHTTPRequest at my network layer.

Issue: I found that during download, if the user’s device goes into sleep mode or the user goes away from my application (either via pressing the home button or by selecting some other app from the minimize bar or via multi-gesture with four fingers to swap to the next application), the downloading process terminates by throwing either a timeout or a connection break. Hence, as a result, the downloading fails.

I was using the following piece of code.

self.request = [ASIHTTPRequest requestWithURL:[NSURL URLWithString:[url stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding]]];
[self.request setRequestMethod:@"GET"];
[self.request setDownloadDestinationPath:paramFilePath];
[self.request startSynchronous];

Adopted Solution:

Later on, after reading some blog posts, I added the following attribute to my request object:

[self.request setShouldContinueWhenAppEntersBackground:YES];

But the problem was still there.
After spending some more time on StackOverflow, I started using the following attribute in my request:

[request setTemporaryFileDownloadPath:tempFilePath];
[self.request setAllowResumeForFileDownloads:YES];

Somehow my app is now behaving well. If I pick 4 or 5 items and start downloading, it doesn’t interrupt the download process even if I navigate away from my app.

Questions: So the questions are, am I doing it right? Or are there some other better ways to handle such a scenario? Moreover, when our app enters the background, then what happens with our ASI calls (sync/async calls)? Does iOS stop/pause them? or let them continue running in background so that when response arrives, our app handle it (due to shouldContinueWhenAppEntersBackground attribute)

What is the significance of beginBackgroundTaskWithExpirationHandler and UIBackgroundTask?

Another thing is (especially for my scenario), if we start a download process, then what happens to this process at the time when the app enters the background? Does iOS allow you to continue downloading the data when the app enters the background? Or just pause it?  Right now, I’m assuming that my download will get paused and then resume when the app enters the foreground again. Is that right? Plus, is it confirmed that we can’t continue download progress from foreground-⁣background-⁣foreground? We have to bear a pause and resume cycle. Right?

Kindly reply in the comments about your experiences with such scenarios.

Thanks in advance.

Author Profile

Aasim Naseem
Hey, Thanks for your interest. I’m a PMP, AWS Solutions Architect, and Scrum Master certified professional with 17+ years of hands-on experience leading projects, building teams, and helping organizations deliver software solutions better, faster, and smarter.

Outside of work, I’ve got a deep curiosity for history — especially ancient civilizations like Egypt. I also enjoy reflecting on the everyday moments that shape how we live and work. This blog is my space to share insights, lessons, and thoughts from both my professional journey and personal interests.

Thanks for reading — and I hope you will find something here that matches your interest.
Latest entries
  • Economic impact of Eid ul Adha - AasimNaseem.comIslamJune 6, 2025 | Read Count: 305Economic impact of Eid-ul-Adha
  • Best PMP Exam Study Resources - AasimNaseem.comPMP CertificationMay 23, 2025 | Read Count: 507Best PMP Study Resources for 2025 (Books, Courses, Tools & More)
  • agile vs scrum - AasimNaseem.comAgile & FrameworksMay 7, 2025 | Read Count: 484Agile vs Scrum: Finally Understanding the Difference
  • When Agile shouldn’t Use - AasimNaseem.comAgile & FrameworksApril 25, 2025 | Read Count: 510When Not To Use Agile: 5 Signs You Need a Different Approach
iOS ASIHTTPRequestbeginBackgroundTaskWithExpirationHandlerdownloading in backgroundiossetShouldContinueWhenAppEntersBackgroundUIBackgroundTask

Post navigation

Previous post
Next post

Related Posts

iOS iOS 9 Features - AasimNaseem.com

30+ iOS 9 features that Apple didn’t show off on stage

June 9, 2015 | Read Count: 10,457April 9, 2025

Category: My Tutorials > iOSAnother iOS, new SDK and new features. Users are happy, and developers are ready to dig into APIs. Author Profile Aasim Naseem Hey, Thanks for your interest. I’m a PMP, AWS Solutions Architect, and Scrum Master certified professional with 17+ years of hands-on experience leading projects,…

Read More
iOS Local History Xcode - AasimNaseem.com

Local history/revision of files in Xcode

February 24, 2013 | Read Count: 12,514April 9, 2025

Category: My Tutorials > iOSHello friends .. hope things are going good on your desk .. Last night I was going through my tweets, and there I found something really interesting; I crawled it for few minutes and after reading some blog posts I came to know about a very useful…

Read More
iOS Redundant Binary Upload - AasimNaseem.com

“Redundant Binary Upload” Issue on iTunesConnect

September 13, 2014 | Read Count: 11,571April 9, 2025

Category: My Tutorials > iOSHey Devs If you are having following issue on new interface of iTunesConnect “Redundant Binary Upload. There already exists a binary upload with build version ‘1.0’ for train ‘1.0’” then you are not alone like forever alone guy. Like me and you, many others are facing…

Read More

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Recent Posts

  • Economic impact of Eid-ul-Adha
    Economic impact of Eid-ul-Adha
    June 6, 2025 | Read Count: 305
  • Best PMP Study Resources for 2025 (Books, Courses, Tools & More)
    Best PMP Study Resources for 2025 (Books, Courses, Tools & More)
    May 23, 2025 | Read Count: 507
  • Agile vs Scrum: Finally Understanding the Difference
    Agile vs Scrum: Finally Understanding the Difference
    May 7, 2025 | Read Count: 484
  • When Not To Use Agile: 5 Signs You Need a Different Approach
    When Not To Use Agile: 5 Signs You Need a Different Approach
    April 25, 2025 | Read Count: 510
  • Quran on Peace and Kindness
    Quran on Peace and Kindness
    April 20, 2025 | Read Count: 468

Posts from Past

  • June 2025
  • May 2025
  • April 2025
  • January 2025
  • November 2024
  • April 2024
  • October 2022
  • August 2021
  • September 2020
  • May 2020
  • April 2019
  • January 2019
  • September 2018
  • July 2015
  • June 2015
  • November 2014
  • September 2014
  • April 2014
  • June 2013
  • May 2013
  • February 2013
  • January 2013
  • December 2012
  • September 2012
  • August 2012
  • July 2012
  • June 2012
  • March 2012
  • February 2012
  • January 2012
  • November 2011
  • October 2011
  • September 2011
  • August 2011
  • July 2011
  • June 2011
  • May 2011
  • April 2011
  • February 2011
  • January 2011
  • December 2010
  • November 2010
  • October 2010
  • September 2010
  • August 2010
  • July 2010
  • June 2010
  • May 2010
  • April 2010
  • March 2010
  • February 2010
  • January 2010
  • December 2009
  • November 2009
  • October 2009
  • September 2009
  • August 2009

Categories List

  • Agile & Frameworks
  • Amazon Kindle
  • Android
  • Aspect Oriented Programming
  • BlackBerry
  • Blog
  • Code Repositories
  • History
  • iOS
  • Islam
  • Java
  • JavaScript
  • Life Around Us
  • Linux
  • My Bookshelf
  • My Poetry
  • My Sketch Work
  • PMP Certification
  • Random Tips
  • Saunterer Soul

Recent Posts

  • Economic impact of Eid-ul-Adha
  • Best PMP Study Resources for 2025 (Books, Courses, Tools & More)
  • Agile vs Scrum: Finally Understanding the Difference
  • When Not To Use Agile: 5 Signs You Need a Different Approach
  • Quran on Peace and Kindness

Recent Comments

  1. Aasim Naseem on When Not To Use Agile: 5 Signs You Need a Different Approach
  2. Aasim Naseem on When Not To Use Agile: 5 Signs You Need a Different Approach
  3. Masjid Wazir Khan, Lahore Pakistan - Aasim's Web Corner on Everlasting Art of Badshahi Masjid Lahore Pakistan
  4. Rishi Kumar on When Not To Use Agile: 5 Signs You Need a Different Approach
  5. Best PMP Study Resources for 2025 (Books, Courses, Tools & More) - Aasim's Web Corner on PMP Exam Eligibility 2025: 3 Things You Need to Know
©2025 Aasim's Web Corner | WordPress Theme by SuperbThemes