title: How to have an app infrequently search for major updates in the background?
body: <p>This app communicates with a hardware accessory. I would like to have the app woken up once every 24 hours to search for firmware updates for that hardware. If an update is available, a notification will be sent to the notification center and the user can tap it to open the app and download the update.</p>
  
  <p>None of the background modes discussed <a href="https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html" rel="nofollow">here</a> seem appropriate. The closest is "background fetch" which is meant for an app that "regularly downloads and processes small amounts of content from the network."</p>
  
  <p>The problems with this (all can be worked around) are:</p>
  
  <ul>
  <li>No way to specify how often to wake up to check for updates</li>
  <li>An expectation that if content is available, the app will download it immediately (instead, I just want to send the user a notification so they know an update is available)</li>
  </ul>
  
  <p>So should I use background fetch and work around its limitations, is there a different background mode or API that would be better suited, or is this something an app shouldn't do?</p>