diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 57f0de7..b0b23be 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -217,7 +217,7 @@ jobs: - name: Restore Dependencies run: dotnet restore - name: Publish Android - run: dotnet publish demo/Semi.Avalonia.Demo.Android -c Release -f net8.0-android --no-restore -o publish /p:RuntimeIdentifier=android-arm64 + run: dotnet publish demo/Semi.Avalonia.Demo.Android -c Release -f net9.0-android --no-restore -o publish /p:RuntimeIdentifier=android-arm64 - name: Upload a Build Artifact uses: actions/upload-artifact@v4.6.2 with: diff --git a/demo/Semi.Avalonia.Demo.Web/Assets/Fonts/SourceHanSansCN-Bold.otf b/demo/Fonts/SourceHanSansCN-Bold.otf similarity index 100% rename from demo/Semi.Avalonia.Demo.Web/Assets/Fonts/SourceHanSansCN-Bold.otf rename to demo/Fonts/SourceHanSansCN-Bold.otf diff --git a/demo/Semi.Avalonia.Demo.Web/Assets/Fonts/SourceHanSansCN-Regular.otf b/demo/Fonts/SourceHanSansCN-Regular.otf similarity index 100% rename from demo/Semi.Avalonia.Demo.Web/Assets/Fonts/SourceHanSansCN-Regular.otf rename to demo/Fonts/SourceHanSansCN-Regular.otf diff --git a/demo/Semi.Avalonia.Demo.Android/AvaloniaAppBuilderExtensions.cs b/demo/Semi.Avalonia.Demo.Android/AvaloniaAppBuilderExtensions.cs new file mode 100644 index 0000000..ef18895 --- /dev/null +++ b/demo/Semi.Avalonia.Demo.Android/AvaloniaAppBuilderExtensions.cs @@ -0,0 +1,16 @@ +using Avalonia; +using Avalonia.Media; + +namespace Semi.Avalonia.Demo.Android; + +public static class AvaloniaAppBuilderExtensions +{ + private static string DefaultFontFamily => "avares://Semi.Avalonia.Demo.Android/Assets#Source Han Sans CN"; + + public static AppBuilder WithSourceHanSansCNFont(this AppBuilder builder) => + builder.With(new FontManagerOptions + { + DefaultFamilyName = DefaultFontFamily, + FontFallbacks = [new FontFallback { FontFamily = new FontFamily(DefaultFontFamily) }] + }); +} \ No newline at end of file diff --git a/demo/Semi.Avalonia.Demo.Android/MainActivity.cs b/demo/Semi.Avalonia.Demo.Android/MainActivity.cs index 03b691f..012a48d 100644 --- a/demo/Semi.Avalonia.Demo.Android/MainActivity.cs +++ b/demo/Semi.Avalonia.Demo.Android/MainActivity.cs @@ -1,5 +1,6 @@ using Android.App; using Android.Content.PM; +using Avalonia; using Avalonia.Android; namespace Semi.Avalonia.Demo.Android; @@ -13,4 +14,9 @@ namespace Semi.Avalonia.Demo.Android; ConfigurationChanges = ConfigChanges.Orientation | ConfigChanges.ScreenSize | ConfigChanges.UiMode)] public class MainActivity : AvaloniaMainActivity { + protected override AppBuilder CustomizeAppBuilder(AppBuilder builder) + { + return base.CustomizeAppBuilder(builder) + .WithSourceHanSansCNFont(); + } } \ No newline at end of file diff --git a/demo/Semi.Avalonia.Demo.Android/Semi.Avalonia.Demo.Android.csproj b/demo/Semi.Avalonia.Demo.Android/Semi.Avalonia.Demo.Android.csproj index ec5bdb0..cd352a5 100644 --- a/demo/Semi.Avalonia.Demo.Android/Semi.Avalonia.Demo.Android.csproj +++ b/demo/Semi.Avalonia.Demo.Android/Semi.Avalonia.Demo.Android.csproj @@ -1,7 +1,7 @@ Exe - net8.0-android + net9.0-android 21 enable com.irihitech.Semi.Avalonia @@ -15,6 +15,7 @@ + diff --git a/demo/Semi.Avalonia.Demo.Web/Semi.Avalonia.Demo.Web.csproj b/demo/Semi.Avalonia.Demo.Web/Semi.Avalonia.Demo.Web.csproj index 15dbffc..4a066be 100644 --- a/demo/Semi.Avalonia.Demo.Web/Semi.Avalonia.Demo.Web.csproj +++ b/demo/Semi.Avalonia.Demo.Web/Semi.Avalonia.Demo.Web.csproj @@ -7,7 +7,7 @@ - +