C#
.NET
MAUI
Android
iOS
Learn how to change the screen brightness in your MAUI Android and iOS apps.
We'll define a function that takes a float argument which controls how bright the screen is. This value ranges from 0 for the lowest brightness up to 1 for the highest brightness. We'll also return the previous brightness so we know what to reset it to.
Partial implementations must all share the same class name and namespace
Create a new file called BrightnessService.cs that defines our api
C#namespace MyProject.Services
{
public partial class BrightnessService
{
public partial float SetBrightness(float brightness);
}
}
Inside your Platforms > Android folder, create a new file called BrightnessService.cs
C#using Android.Views;
namespace MyProject.Services
{
public partial class BrightnessService
{
public partial float SetBrightness(float brightness)
{
try
{
var window = Microsoft.Maui.ApplicationModel.Platform.CurrentActivity.Window;
var attributesWindow = new WindowManagerLayoutParams();
var previousBrightness = window.Attributes.ScreenBrightness;
attributesWindow.CopyFrom(window.Attributes);
attributesWindow.ScreenBrightness = brightness;
window.Attributes = attributesWindow;
return previousBrightness;
}
catch
{
return 0;
}
}
}
}
Inside your Platforms > iOS folder, create a new file called BrightnessService.cs
C#using UIKit;
namespace MyProject.Services
{
public partial class BrightnessService
{
public partial float SetBrightness(float brightness)
{
try
{
var previousBrightness = UIScreen.MainScreen.Brightness;
UIScreen.MainScreen.Brightness = brightness;
return (float)previousBrightness;
}
catch
{
return 0;
}
}
}
}
C#var brightnessService = new BrightnessService();
var previousBrightness = brightnessService.SetBrightness(1); // Max brightness
// (Optional) Later on reset the brightness to what it was
brightnessService.SetBrightness(previousBrightness);