Hacker News new | ask | show | jobs
by lostmsu 453 days ago
I actually have an app in iOS store that completely executes in the background: https://itunes.apple.com/app/id6737482921?mt=8

Never had it stopped by iOS. So not only there's no fundamental restriction, the App Store itself allows some apps to do that.

2 comments

What API are you using to keep running in the background? Most likely you are misusing it on some manner and have yet to get caught by App Review.
I've seen this bypassed via background audio and background location.
The app does background audio, and its use is legitimate. It is an audio app.

But the point is - there's no fundamental restriction from the OS itself.

You contradicted yourself.

Whether you want to call it a “restriction”, “a lack of permission without being X type of activity”, or “it works because the app exhibits Y behavior”, it’s all functionally a restriction.

You can run some background activities that are not audio apps, but you’re at the mercy of iOS’s decision to keep your task active or not. If you’re off the charger, all bets are off. iOS’s dev docs make this very clear.

No, basic set theory: not every restriction is a fundamental restriction.
Elaborate?
Another way of phrasing this: There is a fundamental restriction, with a carve out for a few specific things, including audio playback.
I don't think you understand the difference between a fundamental restriction and a restriction in general.
What’s not fundamental about the OS pausing any background thread that doesn’t have an excuse to continue running from a relatively short list?
Not sure what you mean with fundamental. As mentioned in the thread parent comment links to, the issue lies in enforced limits and lack* of general mechanism available to developers to allow background execution for any kind of app or/and purpose. No one said iOS itself lacks the functionality for background execution.

*In the same thread, it is noted that this lack is by choice and special-purpose mechanisms are preferred instead to prevent abuse.