Co nowego w programie .NET MAUI dla platformy .NET 9

Celem interfejsu użytkownika aplikacji wieloplatformowej platformy .NET (.NET MAUI) na platformie .NET 9 jest zwiększenie jakości produktu. Obejmuje to rozszerzanie zakresu testów, kompleksowe testowanie scenariuszy i naprawianie usterek. Aby uzyskać więcej informacji na temat ulepszeń jakości produktu w programie .NET MAUI 9 (wersja zapoznawcza), zobacz następujące informacje o wersji:

Ważne

Ze względu na pracę z zależnościami zewnętrznymi, takimi jak narzędzia Xcode lub Android SDK, zasady obsługi programu .NET MAUI różnią się od zasad obsługi platformy .NET i platformy .NET Core. Aby uzyskać więcej informacji, zobacz Zasady obsługi programu .NET MAUI.

Na platformie .NET 9 program .NET MAUI jest dostarczany jako obciążenie platformy .NET i wiele pakietów NuGet. Zaletą tego podejścia jest możliwość łatwego przypinania projektów do określonych wersji, a także umożliwia łatwe wyświetlanie podglądu nieopublikowanych lub eksperymentalnych kompilacji. Podczas tworzenia nowego projektu .NET MAUI wymagane pakiety NuGet są automatycznie dodawane do projektu.

Aby uzyskać informacje o nowościach na platformie .NET 9, zobacz Co nowego na platformie .NET 9.

Android

Platforma .NET dla systemu Android 9 (wersja zapoznawcza), która używa interfejsu API 34 i zestawu JDK 17, obejmuje pracę w celu skrócenia czasu kompilacji oraz zwiększenia możliwości przycinania aplikacji w celu zmniejszenia rozmiaru i zwiększenia wydajności. Aby uzyskać więcej informacji na temat platformy .NET dla systemu Android 9 (wersja zapoznawcza), zobacz następujące informacje o wersji:

Pakiety zasobów

Platforma .NET dla systemu Android 9 (wersja zapoznawcza 3) wprowadza możliwość umieszczania zasobów w osobnym pakiecie nazywanym pakietem zawartości. Umożliwia to przekazywanie gier i aplikacji, które zwykle byłyby większe niż podstawowy rozmiar pakietu dozwolony przez Google Play. Umieszczając te zasoby w osobnym pakiecie, można przekazać pakiet o rozmiarze do 2 Gb, a nie podstawowy rozmiar pakietu o rozmiarze 200 Mb.

Ważne

Pakiety zasobów mogą zawierać tylko zasoby. W przypadku platformy .NET dla systemu Android oznacza to elementy, które mają akcję kompilacji AndroidAsset .

Aplikacje MAUI platformy .NET definiują zasoby za pośrednictwem akcji kompilacji MauiAsset . Pakiet zasobów można określić za pomocą atrybutu AssetPack :

<MauiAsset
    Include="Resources\Raw\**"
    LogicalName="%(RecursiveDir)%(Filename)%(Extension)"
    AssetPack="myassetpack" />

Uwaga

Dodatkowe metadane będą ignorowane przez inne platformy.

Jeśli masz określone elementy, które chcesz umieścić w pakiecie zasobów, możesz użyć atrybutu UpdateAssetPack do zdefiniowania metadanych:

<MauiAsset Update="Resources\Raw\MyLargeAsset.txt" AssetPack="myassetpack" />

Pakiety zasobów mogą mieć różne opcje dostarczania, które kontrolują, kiedy zasoby zostaną zainstalowane na urządzeniu:

  • Instalowane pakiety czasowe są instalowane w tym samym czasie co aplikacja. Ten typ pakietu może mieć rozmiar do 1 Gb, ale można mieć tylko jeden z nich. Ten typ dostarczania jest określony z metadanymi InstallTime .
  • Szybkie pakiety follow zostaną zainstalowane w pewnym momencie wkrótce po zakończeniu instalowania aplikacji. Aplikacja będzie mogła zostać uruchomiona, gdy ten typ pakietu jest instalowany, więc przed próbą użycia zasobów należy sprawdzić, czy instalacja została zakończona. Ten rodzaj pakietu zasobów może mieć rozmiar do 512 Mb. Ten typ dostarczania jest określony z metadanymi FastFollow .
  • Pakiety na żądanie nigdy nie zostaną pobrane na urządzenie, chyba że aplikacja zażąda jej specjalnie. Całkowity rozmiar wszystkich pakietów zasobów nie może przekraczać 2 Gb i może być maksymalnie 50 oddzielnych pakietów zasobów. Ten typ dostarczania jest określony z metadanymi OnDemand .

W aplikacjach MAUI platformy .NET typ dostarczania można określić za pomocą atrybutu DeliveryType na :MauiAsset

<MauiAsset Update="Resources\Raw\myvideo.mp4" AssetPack="myassetpack" DeliveryType="FastFollow" />

Aby uzyskać więcej informacji na temat pakietów zasobów systemu Android, zobacz Pakiety zasobów systemu Android.

iOS

Program .NET 9 (wersja zapoznawcza) w systemach iOS, tvOS, Mac Catalyst i macOS używa programu Xcode 15.2 dla następujących wersji platformy:

  • iOS: 17.2
  • tvOS: 17.2
  • Mac Catalyst: 17.2
  • macOS: 14.2

Aby uzyskać więcej informacji na temat platformy .NET 9 (wersja zapoznawcza) w systemach iOS, tvOS, Mac Catalyst i macOS, zobacz następujące informacje o wersji:

Powiązania

Platforma .NET dla systemu iOS 9 (wersja zapoznawcza 3) wprowadza możliwość obsługi wielu wersji docelowych platformy .NET dla powiązań systemu iOS. Na przykład projekt biblioteki może wymagać skompilowania dwóch odrębnych wersji systemu iOS:

<TargetFrameworks>net9.0-ios17.0;net9.0-ios17.2</TargetFrameworks>

Spowoduje to wygenerowanie dwóch bibliotek, po jednym przy użyciu powiązań systemu iOS 17.0 i jednej przy użyciu powiązań systemu iOS 17.2.

Ważne

Projekt aplikacji powinien zawsze być przeznaczony dla najnowszego zestawu SDK systemu iOS.

Zobacz też