This package provides Blazor applications with access to the browser sensor apis. Currently only the AmbientLightSensor api is supported.
-
In your Blazor app, add the
AspNetMonsters.Blazor.Sensors
NuGet packageInstall-Package AspNetMonsters.Blazor.Sensors -IncludePrerelease
-
In your Blazor app's
Startup.cs
ConfigureServices
method, register theAmbientLightSensorService
.services.AddSingleton<AmbientLightSensorService>();
-
Now you can inject the
AmbientLightSensorService
into any Blazor page and use it like this:@using AspNetMonsters.Blazor.Sensors @inject AmbientLightSensorService sensorService <h1>Let there be light!</h1> <h3>@sensor?.Illuminance</h3> <button onclick=@Stop>Stop</button> <button onclick=@Start>Start</button> @functions { AmbientLightSensor sensor; protected override async Task OnInitAsync() { await Start(); } private async Task Start() { sensor = await sensorService.StartReading(() => { StateHasChanged(); }); } private async Task Stop() { if (sensor != null) { await sensorService.StopReading(sensor); sensor = null; } } }