Xamarin Apple-Projektmigration
Ein .NET 8-Projekt für eine .NET for iOS-App ähnelt dem folgenden Beispiel:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0-ios</TargetFramework>
<OutputType>Exe</OutputType>
<Nullable>enable</Nullable>
<ImplicitUsings>true</ImplicitUsings>
<SupportedOSPlatformVersion>13.0</SupportedOSPlatformVersion>
</PropertyGroup>
</Project>
Für ein Bibliotheksprojekt lassen Sie die Eigenschaft $(OutputType)
ganz weg oder geben Sie Library
als Eigenschaftswert an.
Änderungen an MSBuild-Eigenschaften
Die folgende Tabelle zeigt, wie Sie Eigenschaften in Xamarin Apple-Projekten zu .NET-Projekten zuordnen können:
Eigenschaft | Beschreibung | .NET | Projektkonvertierung |
---|---|---|---|
MtouchExtraArgs |
Zusätzliche Argumente für Mtouch. | Einige Argumente sind weiterhin anwendbar, einige Argumente sind nicht vorhanden. | Kopieren |
MtouchArch |
App-Architektur(en) | Nicht zutreffend | Konvertieren in RuntimeIdentifier . Weitere Informationen finden Sie unter Konvertieren in RuntimeIdentifier". |
XamMacArch |
App-Architektur(en) | Nicht zutreffend | Konvertieren in RuntimeIdentifier . Weitere Informationen finden Sie unter Konvertieren in RuntimeIdentifier". |
HttpClientHandler |
Der standardmäßige HttpClientHandler . |
UseNativeHttpHandler |
Konvertieren in UseNativeHttpHandler . Weitere Informationen finden Sie unter Konvertieren in UseNativeHttpHandler. |
MtouchHttpClientHandler |
Der Standardwert MtouchHttpClientHandler. |
UseNativeHttpHandler |
Konvertieren in UseNativeHttpHandler . Weitere Informationen finden Sie unter Konvertieren in UseNativeHttpHandler. |
EnableCodeSigning |
Gibt an, ob Codesignieren aktiviert ist. | Kopieren | |
CodeSigningKey |
Gibt den Codesignierschlüssel an. | Umbenennen in CodesignKey | |
CodesignKey |
Gibt den Codesignierschlüssel an. | Kopieren | |
CodesignProvision |
Gibt das Bereitstellungsprofil an. | Kopieren | |
CodesignEntitlements |
Der Pfad zur Berechtigungsdatei. | Kopieren | |
CodesignExtraArgs |
Zusätzliche Codesignierargumente. | Kopieren | |
PackageSigningKey |
Gibt den Codesignierschlüssel an, um das Paket zu signieren. | Kopieren | |
PackagingExtraArgs |
Gibt die zusätzlichen Argumente für das Verpackungstool an. | Kopieren | |
ProductDefinition |
Der Pfad zur Produktdefinitionsdatei, die beim Verpacken verwendet werden soll. | Kopieren | |
MtouchEnableSGenConc |
Umbenennen in EnableSGenConc . |
||
EnableSGenConc |
Kopieren |
In RuntimeIdentifier konvertieren
In der folgenden Tabelle wird gezeigt, wie die Eigenschaften MtouchArch
und XamMacArch
in die Eigenschaft RuntimeIdentifier
oder die Eigenschaft RuntimeIdentifiers
konvertiert werden, wenn sie ein Xamarin.iOS-Projekt zu .NET for iOS migrieren:
Wert | RuntimeIdentifier | RuntimeIdentifiers |
---|---|---|
ARMv7 | ios-arm | |
ARMv7s | ios-arm | |
ARMv7+ARMv7s | ios-arm | |
ARM64 | iOS (ARM64) | |
ARMv7+ARM64 | ios-arm; ios-arm64 | |
ARMv7+ARMv7s+ARM64 | ios-arm; ios-arm64 | |
x86_64 | iossimulator-x64 | |
i386 | iossimulator-x86 | |
x86_64+i386 | iossimulator-x86; iossimulator-x64 |
Wichtig
Wenn Sie über mehrere Laufzeit-IDs verfügen, verwenden Sie die RuntimeIdentifiers
-Eigenschaft anstelle der RuntimeIdentifier
-Eigenschaft.
In der folgenden Tabelle wird gezeigt, wie die Eigenschaften MtouchArch
und XamMacArch
in die Eigenschaft RuntimeIdentifier
konvertiert werden, wenn sie ein Xamarin.Mac-Projekt zu .NET for macOS+ migrieren:
Eigenschaft | RuntimeIdentifier |
---|---|
x86_64 | osx-x64 |
Die folgende Tabelle zeigt, wie die Eigenschaften MtouchArch
und XamMacArch
in die Eigenschaft RuntimeIdentifier
konvertiert werden, wenn ein Xamarin.tvOS-Projekt nach .NET für tvOS migriert wird:
Eigenschaft | RuntimeIdentifier |
---|---|
ARM64 | tvos-arm64 |
x86_64 | tvossimulator-x64 |
Für weitere Informationen über die RuntimeIdentifier
-Eigenschaft, siehe RuntimeIdentifier. Weitere Informationen zu Laufzeitbezeichnern finden Sie unter .NET RID Catalog.
In UseNativeHttpHandler konvertieren
Die folgende Tabelle zeigt, wie die HttpClientHandler
- und MtouchHttpClientHandler
-Eigenschaften in die UseNativeHttpHandler
-Eigenschaft konvertiert werden, wenn ein Xamarin Apple-Projekt nach .NET 8 migriert wird:
Wert | UseNativeHttpHandler |
---|---|
HttpClientHandler | false |
NSUrlSessionHandler | nicht festlegen |
CFNetworkHandler | nicht festlegen |
Änderungen an anderen Elementen
Die folgende Tabelle zeigt, wie Sie andere Elemente in Xamarin Apple-Projekten zu .NET-Projekten zuordnen können:
Artikel | Beschreibung | .NET | Projektkonvertierung |
---|---|---|---|
LinkDescription |
Zusätzliche XML-Dateien für den verwalteten Linker. | Identisch: | Kopieren |
Änderungen an Info.plist
Einige Werte wurden von Info.plist in die Projektdatei verschoben.
MinimumOSVersion und LSMinimumSystemVersion
Die Eigenschaften MinimumOSVersion
und LSMinimumSystemVersion
sollten in .NET 8-Projekten in die Eigenschaft SupportedOSPlatformVersion
umgewandelt werden. Weitere Informationen finden Sie unter Sicherstellen, dass MinimumOSVersion mit SupportedOSPlatformVersion übereinstimmt.