feat.airapp sdk

This commit is contained in:
lincube
2026-06-08 02:39:44 +08:00
parent 1a6f129e78
commit 7db72fbcd0
36 changed files with 2617 additions and 0 deletions

View File

@@ -0,0 +1,40 @@
using LanMountainDesktop.AirAppSdk;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
namespace LanMountainDesktop.AirApp.ComponentTemplate;
/// <summary>
/// AirApp entry point.
/// </summary>
[AirAppEntrance]
public sealed class MyAirApp : AirAppBase
{
public override void Initialize(HostBuilderContext context, IServiceCollection services)
{
// Register the desktop component
services.AddAirAppComponent<MyWidget>(
"my-widget",
"My Widget",
options =>
{
options.Description = "A sample desktop component";
options.DefaultWidth = 2;
options.DefaultHeight = 2;
options.ResizeMode = AirAppComponentResizeMode.Both;
options.Category = "Custom";
options.IconKey = "AppGeneric";
});
}
public override Task OnStartedAsync(IAirAppRuntimeContext context)
{
context.Logger.Info("My AirApp started successfully!");
return Task.CompletedTask;
}
public override Task OnStoppingAsync()
{
return Task.CompletedTask;
}
}