Die Unterstützung für Xamarin.Forms endete am 1. Mai 2024 gemäß der Xamarin -Unterstützungsrichtlinie:
Die Xamarin -Unterstützung endete am 1. Mai 2024 für alle Xamarin -SDKs, einschließlich Xamarin.formen.
Xamarin.Forms wurde im Mai 2022 von .NET MAUI als Teil von .NET 6 abgelöst und wird derzeit wie in der .NET MAUI -Support -Richtlinie beschrieben unterstützt. Befolgen Sie die offiziellen Upgrade -Leitlinien, um Ihre Xamarin -Anwendungen in die neueste Version von .NET zu bringen.
Vielen Dank an alle unsere Entwickler und Mitwirkenden, dass Sie ein Teil unserer Xamarin -Community sind. Wir sehen uns überall in .net Maui!
Xamarin.Forms bietet eine Möglichkeit, native Apps für iOS, Android, Windows und MacOS, vollständig in C#zu erstellen.
Lesen Sie mehr über die Plattform unter https://www.xamarin.com/forms.
| Plattform/Funktion | Paketname | Stabil | Vorverständung | Nightly Feed Azure (Hauptzweig) |
|---|---|---|---|---|
| Kern | Xamarin.Forms | |||
| Applinks | Xamarin.Forms.AppLinks | |||
| Karten | Xamarin.Forms.Maps | |||
| Maps.gtk | Xamarin.Forms.Maps.GTK | |||
| Maps.WPF | Xamarin.Forms.Maps.WPF | |||
| Seiten | Xamarin.Forms.Pages | |||
| Seiten.azure | Xamarin.Forms.Pages.Azure | |||
| Plattform.gtk | Xamarin.Forms.Platform.GTK | |||
| Plattform.WPF | Xamarin.Forms.Platform.WPF | |||
| Visual.material | Xamarin.Forms.Visual.Material |
Wenn Sie den neuesten Entwicklerbau verwenden möchten, sollten Sie diesen Blog -Beitrag lesen:
Fügen Sie den nächtlichen Feed zu Ihren Nuget -Quellen hinzu oder fügen Sie Ihrer App eine nuget.config hinzu (platzieren Sie ihn in demselben Verzeichnis, in dem sich Ihre Lösungsdatei befindet) mit dem folgenden Inhalt:
<? xml version = " 1.0 " encoding = " utf-8 " ?>
< configuration >
< packageSources >
< clear />
< add key = " xamarin-ci " value = " https://aka.ms/xf-nightly/index.json " />
< add key = " NuGet.org " value = " https://api.nuget.org/v3/index.json " />
</ packageSources >
</ configuration >Hinweis: Diese Nuget.config sollte bei Ihrer Anwendung sein, es sei denn, Sie möchten, dass nächtliche Pakete möglicherweise für andere Apps auf dem Computer wiederhergestellt werden.
Ändern Sie die Abhängigkeiten Ihrer Anwendung, um eine * zu erhalten, um die neueste Version zu erhalten.
Für beide Methoden darunter müssen Sie diesen Nuget -Feed für den Aufbau hinzufügen, um erfolgreich zu sein. Siehe diese Dokumentationsseite, um herauszufinden, wie.
VS 2019+ ist für die Entwicklung von Xamarin.formen erforderlich. Wenn Sie es noch nicht installiert haben, können Sie es hier herunterladen. VS 2019+ ist völlig kostenlos. Wenn Sie zum ersten Mal vs 2019+ installieren, wählen Sie den Installationstyp "benutzerdefinierte" und wählen Sie die folgenden Features -Liste aus, um zu installieren:
Individual Components > .NET > .NET Framework 4.6.1 SDK, .NET Framework 4.6.1 targeting pack, .NET Framework 4.7.2 SDK, .NET Framework 4.7.2 targeting pack .Individual Components > SDKs, libraries, and frameworks > Windows 10 SDK (10.0.19041.0), Windows 10 SDK (10.0.18362.0), Windows 10 SDK (10.0.16299.0) .Individual Components > Development Activities > Xamarin Remoted SimulatorIndividual Components > Emulators > Hyper-V Intel Hardware Accelerated Execution Manager (HAXM) verwendenDie Android 10.0 API 29 SDK und Android 9.0 API 28 SDK sind für die Entwicklung von Xamarin.formen erforderlich. Sie können mit dem Xamarin Android SDK -Manager installiert werden.
Wir empfehlen auch, Xamarin Android Device Manager zu installieren. Dadurch werden die oben installierten HAXM -Tools verwendet und können Sie Android Virtual Devices (AVDs) konfigurieren, die Android -Geräte nachahmen. Wenn Sie bereits VS 2019+ installiert haben, können Sie überprüfen, ob diese Funktionen installiert werden, indem die VS 2019+ -Installation über das Visual Studio -Installationsprogramm geändert wird.
Wenn Sie Fehler über fehlende SDKs erhalten, können Sie unser Bereitstellungsskript ausführen. Beachten Sie, dass es einige Zeit dauern kann, das gesamte Skript auszuführen. Um besser zu verstehen, wie das Skript funktioniert, können Sie sich gerne in unserer Build.cake -Datei ansehen.
Auf cmd
build.cmd -Target provision
Auf Powershell
./build.ps1 -Target provision
HINWEIS: Wenn Sie auf einen Fehler stoßen, der Build.ps1 ist, ist nicht digital signiert, öffnen Sie PowerShell als Administrator und lösen Sie durch Ausführen von Set-ExecutionPolicy RemoteSigned zuerst.
Auf CMD/PowerShell/SH (neu! Weitere Informationen hier)
dotnet tool install Cake.Tool -g
dotnet cake --target=provision
Wenn Sie es noch nicht installiert haben, finden Sie hier Anweisungen zum Herunterladen und Einrichten.
Aufgrund der aktuellen Multi-Targeting-Einschränkungen bei Visual Studio für MAC müssen Sie einige Projekte manuell erstellen/wiederherstellen, bevor Sie in der Lage sind, an der Xamarin-Formulierung zu arbeiten.
Hier sind einige verschiedene Optionen, die wir zusammengestellt haben, um diesen Prozess zu erleichtern
Zweige 3.5+ geliefert mit einem Kuchen -Skript -Ziel, mit dem Sie VSMAC erstellen und öffnen können
./build.sh --target vsmacOder wie oben im Windows -Abschnitt über die Bereitstellung erwähnt, können Sie auch den neuen Kuchen verwenden.tool
dotnet tool install Cake.Tool -g
dotnet cake --target=provision
Wenn Sie an einem früheren Zweig arbeiten, der nicht über die Kuchenskripte verfügt, können Sie das folgende Build.SH -Skript verwenden
Wenn Sie keine Skripte ausführen möchten:
msbuild Xamarin.Forms.Build.Tasks/Xamarin.Forms.Build.Tasks.csprojXamarin.Forms.Build.Tasks.csproj Wenn Sie die Lösung von Xamarin.Forms öffnen, werden Sie feststellen, dass es im Bereich der Fehlerliste eine Reihe von Fehlern und Warnungen gibt. Sie können dies beheben, indem Sie den Filter von Build + IntelliSense Build Only . Zu diesem Zeitpunkt sollten Sie in der Lage sein, die Lösung erfolgreich aufzubauen.
Standardmäßig verfügt das Projekt Xamarin.Forms.Controls für verschiedene API -Schlüssel nicht mit einer Konfiguration, um auf bestimmte Features auf jeder Plattform zuzugreifen (z. B. Karten). Wenn Sie die Lösung zum ersten Mal erstellen, wird in diesem Projekt eine controlgallery.config -Datei generiert, die so aussieht:
UWPMapsAuthKey:
Wenn Sie nicht mit Karten arbeiten, können Sie dies ignorieren. Wenn Sie mit Karten arbeiten möchten, müssen Sie für jeden dieser Dienste Ihre eigenen API -Schlüssel erhalten, die direkt nach der Kennung eingefügt wurden (z. B. UWPMapsAuthKey:abcdefghijklmnopqrstuvwxyz ). Sie können herausfinden, wie Sie jedes davon wie folgt erhalten:
UWPMapsAuthKey unter https://microsoft.com/maps/create-a-bing-maps-key.aspx Aufgrund der Art und Weise, wie Android funktioniert, kann der Karten -API -Schlüssel zur Laufzeit nicht injiziert werden. Infolgedessen müssen Sie diesen Schlüssel zur Datei MapsKey.cs unter Xamarin.Forms.ControlGallery.Android/Properties hinzufügen:
[assembly: Android.App.MetaData("com.google.android.maps.v2.API_KEY", Value = "INSERT_KEY_HERE")]
Hier finden Sie heraus, wie Sie hier einen Google Maps -API -Schlüssel erhalten.
Stellen Sie sicher, dass Sie nuget.exe 4.0 oder höher und das neueste .NET Core SDK haben. Auf macOS sollten Sie die Plattform im Befehl msbuild angeben ( /p:Platform=iPhoneSimulator )
msbuild /restore Xamarin.Forms.sln
Abhängig von Ihrer Umgebung müssen Sie möglicherweise einige Dinge konfigurieren, bevor Sie UI -Tests debuggen / ausführen können, insbesondere unter Windows.
Xamarin.Forms.ControlGallery.Android . Der einfachste Weg, dies zu tun, besteht darin, mit der rechten Maustaste auf das Projekt zu klicken und "Bereitstellen" auszuwählen. Beachten Sie, dass Sie, wenn Sie die Lösung wieder aufbauen, möglicherweise die APK verlieren und sie erneut generieren müssen.Nachdem diese Schritte erledigt sind, sollten Sie gut gehen. Sie können alle UI -Tests im Test Explorer sehen, sie nach Ihrer eigenen Bequemlichkeit durchsuchen und schnell einzelne Tests durchführen.
Um die UWP -UI -Tests durchzuführen:
Xamarin.Forms.ControlGallery.WindowsUniversal , um die ControlGallery -Anwendung auf Ihrem System zu installieren.Sie sollten jetzt in der Lage sein, einen der UWP -UI -Tests durchzuführen.
Wir folgen dem von der .NET Foundation verwendeten Stil mit wenigen Ausnahmen:
private Schlüsselwort nicht, da es sich um die Standard -Barrierefreiheit in C#handelt.Tools > Options ändern und zu Text Editor > C# navigieren und die Option "Registerkarten" "Registerkarten" aus auswählen. In Visual Studio für Mac wird es über Einstellungen in Source Code > Code Formatting > C# source code festgelegt und das Kontrollkästchen für Convert tabs to spaces deaktiviert.Source Code > Code Formatting > C# source code und Ändern der Desired file width auf 120 festgelegt werden. Wir verwenden GitHub -Probleme, um Probleme zu verfolgen. Wenn möglich, senden Sie bitte eine Reproduktion Ihres Fehlers zusammen mit Ihrem Fehlerbericht.