Hello,
I have a question regarding the behavior of BGProcessingTaskRequest when the app is force-quit by the user via the App Switcher.
Based on common understanding and various discussions — including the following Apple Developer Forum threads:
Waking up an iOS app after app is … | Apple Developer Forums
Will BGAppRefreshTaskRequest will … | Apple Developer Forums
Background fetch after app is forc… | Apple Developer Forums
…it is widely understood that iOS prevents background execution (such as background fetch, push notifications, or BGTaskScheduler) after a user force-quits an app via the App Switcher.
However, in my app, I have observed that a scheduled BGProcessingTaskRequest still executes even after the app has been explicitly terminated via App Switcher. The task is scheduled using submit(_:error:), and it is clearly running some time after the app has been closed by the user.
That said, the task does run, but it appears to operate under tighter constraints — for example, it may be allowed to run for a shorter duration, and network requests appear to be more restricted compared to when the app is not force-quit.
My questions are:
Are there any documented or undocumented exceptions that allow this kind of behavior after force-quit?
Could this be a bug or a behavior change in recent iOS versions? (I am observing this on iOS 18.3, 18.4, and 18.5)
Any insights, experiences, or clarifications from Apple engineers or fellow developers would be greatly appreciated.
Thank you!
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Hello everyone,
According toPrivacy manifest files | Apple Developer Documentation, the following targets require a privacy manifest:
Apps and third-party SDKs — distributed as XCFrameworks, Swift packages, or framework bundles — can contain a privacy manifest file, named PrivacyInfo.xcprivacy.
From this statement, I know "Swift packages" are included under "third-party SDKs". However I'm not clear what kind of "Swift packages" are considered as "third-party SDKs".
Referring to the answer, Digital signatures available for S… | Apple Developer Forums, it's mentioned that digital signatures is focused on binaries. From this, I understand that Privacy manifest is mandatory for Swift packages containing binaries.
However, I'm unclear about the necessity of the Privacy manifest in the following two scenarios, for example:
Is a privacy manifest required for open-source Swift packages that only provide source code?
For local swift packages used within an app (like for modularization) that contain only source code, is a privacy manifest necessary?
If anyone is familiar with this, your insights would be greatly appreciated.