BootBroadcastReceiver class implemented

This commit is contained in:
Kaustav Chaudhuri 2023-05-15 17:21:20 +05:30
parent d61ebd4b75
commit 28e94c4a4c

View File

@ -0,0 +1,39 @@
using Android.App;
using Android.Content;
using GMCabsDriverAssistantSolution.Platforms.Android.Services;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static Java.Util.Jar.Attributes;
namespace GMCabsDriverAssistantSolution.Platforms.Android
{
[BroadcastReceiver(Name = "au.com.gmcabs.driverassistant.app.BootBroadcastReceiver", Enabled = true, Exported = true, DirectBootAware = true)]
[IntentFilter(new[] { Intent.ActionBootCompleted })]
public class BootBroadcastReceiver : BroadcastReceiver
{
public override void OnReceive(Context context, Intent intent)
{
string isForeground = Preferences.Get("isForeground", null);
if (intent.Action.Equals(Intent.ActionBootCompleted))
{
if (isForeground == "YES")
{
var foreGroundServiceIntent = new Intent(global::Android.App.Application.Context, typeof(AndroidLocationService));
if (global::Android.OS.Build.VERSION.SdkInt >= global::Android.OS.BuildVersionCodes.O)
{
global::Android.App.Application.Context.StartForegroundService(intent);
context.StartForegroundService(foreGroundServiceIntent);
}
else
{
global::Android.App.Application.Context.StartService(intent);
context.StartService(foreGroundServiceIntent);
}
}
}
}
}
}