Jobs
Background Periodic Jobs
Area | Value |
---|---|
NuGet | |
Service | Shiny.Jobs.IJobManager |
Auto-Register | NO |
Static Class | ShinyJobs |
Features
- Cross platform periodic background jobs
- Runtime based criteria - charging, low battery, connectivity, and more
Platform Setup
Minimum Version: 12
AppDelegate
using System;
using Foundation;
using Xamarin.Forms.Platform.iOS;
using Shiny;
namespace YourIosApp
{
[Register("AppDelegate")]
public partial class AppDelegate : FormsApplicationDelegate
{
public override bool FinishedLaunching(UIApplication app, NSDictionary options)
{
this.ShinyFinishedLaunching(new Samples.SampleStartup(), options);
global::Xamarin.Forms.Forms.Init();
this.LoadApplication(new Samples.App());
}
}
public override void PerformFetch(UIApplication application, Action<UIBackgroundFetchResult> completionHandler) => this.ShinyPerformFetch(completionHandler);
}
Info.plist
<!DOCTYPE plist PUBLIC " -//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version=\"1.0\">
<dict>
<key>BGTaskSchedulerPermittedIdentifiers</key>
<array>
<string>com.shiny.job</string>
<string>com.shiny.jobpower</string>
<string>com.shiny.jobnet</string>
<string>com.shiny.jobpowernet</string>
</array>
<key>UIBackgroundModes</key>
<array>
<string>processing</string>
<string>fetch</string>
</array>
</dict>
</plist>