Open
Description
Is your feature request related to a problem? Please describe.
Currently, Avalonia stable does not fully support Background App Refresh on iOS. This issue is twofold:
- There is no Avalonia API for Background App Refresh.
- The current Avalonia.iOS implementation does not properly handle background app launch as described in official Apple documentation.
Describe the solution you'd like
A proper implementation of Avalonia support for iOS Background App Refresh would tick the following boxes:
- Avalonia API is extended to hide low level implementation details for background app launch.
- iOS Metal backend follows Apple Developer guidelines for apps moving to the background.
AvaloniaAppDelegate<TApp>
class is modified to reflect nuance of foreground vs. background application invocations.
Describe alternatives you've considered
I've tried to just use the iOS Background App Refresh APIs directly via Xamarin.iOS, but this doesn't work properly due to the reasons outlined above. Direct support at the library level is necessary for a complete implementation of this common iOS app feature.
Additional context
I'm looking to implement this feature myself. I opened this issue in hopes of discussing the new API(s) with the core team and reaching some kind of consensus before diving in 😁