Partager via


Migration de projet Apple Xamarin

Un projet .NET 8 pour une application .NET pour iOS est similaire à l’exemple suivant :

<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>

Pour un projet de bibliothèque, omettez totalement la propriété $(OutputType) ou spécifiez Library comme valeur de propriété.

Changements dans les propriétés MSBuild

Le tableau suivant montre comment faire correspondre les propriétés des projets Xamarin Apple aux projets .NET :

Propriété Description .NET Conversion de projet
MtouchExtraArgs Arguments supplémentaires pour mtouch. Certains arguments sont toujours valables, d’autres non. Copier
MtouchArch Architectures d’application. S/O Convertir en RuntimeIdentifier. Pour plus d’informations, consultez Convertir au format RuntimeIdentifier.
XamMacArch Architectures d’application. S/O Convertir en RuntimeIdentifier. Pour plus d’informations, consultez Convertir au format RuntimeIdentifier.
HttpClientHandler HttpClientHandler par défaut. UseNativeHttpHandler Convertir en UseNativeHttpHandler. Pour plus d’informations, consultez Convertir au format UseNativeHttpHandler.
MtouchHttpClientHandler Valeur par défaut MtouchHttpClientHandler. UseNativeHttpHandler Convertir en UseNativeHttpHandler. Pour plus d’informations, consultez Convertir au format UseNativeHttpHandler.
EnableCodeSigning Spécifie si la signature du code est activée. Copier
CodeSigningKey Spécifie la clé de signature du code. Renommer en CodesignKey
CodesignKey Spécifie la clé de signature du code. Copier
CodesignProvision Spécifie le profil de provisionnement. Copier
CodesignEntitlements Chemin d’accès au fichier des droits. Copier
CodesignExtraArgs Arguments supplémentaires pour la signature du code. Copier
PackageSigningKey Spécifie la clé de signature du code pour signer le paquet. Copier
PackagingExtraArgs Spécifie les arguments supplémentaires pour l’outil d’empaquetage. Copier
ProductDefinition Chemin d’accès au fichier de définition du produit à utiliser lors de l’emballage. Copier
MtouchEnableSGenConc Renommez en EnableSGenConc.
EnableSGenConc Copier

Convertir en RuntimeIdentifier

Le tableau suivant montre comment convertir les propriétés MtouchArch et XamMacArch en propriété RuntimeIdentifier, ou la propriété RuntimeIdentifiers, lors de la migration d’un projet Xamarin.iOS vers .NET pour iOS :

Valeur 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

Important

Si vous avez plusieurs identificateurs d’exécution, utilisez la propriété RuntimeIdentifiers plutôt que la propriété RuntimeIdentifier.

Le tableau suivant montre comment convertir les propriétés MtouchArch et XamMacArch en propriété RuntimeIdentifier, lors de la migration d’un projet Xamarin.Mac vers .NET pour macOS+ :

Propriété RuntimeIdentifier
x86_64 osx-x64

Le tableau suivant montre comment convertir les propriétés MtouchArch et XamMacArch en propriété RuntimeIdentifier, lors de la migration d’un projet Xamarin.tvOS vers .NET pour tvOS :

Propriété RuntimeIdentifier
ARM64 tvos-arm64
x86_64 tvossimulator-x64

Pour plus d'informations sur la propriété RuntimeIdentifier, consultez RuntimeIdentifier. Pour plus d’informations sur les identificateurs de runtime, consultez Catalogue RID .NET.

Convertir en UseNativeHttpHandler

Le tableau suivant montre comment convertir les propriétés HttpClientHandler et MtouchHttpClientHandler en propriété UseNativeHttpHandler, lors de la migration d’un projet Xamarin Apple vers .NET 8 :

Valeur UseNativeHttpHandler
HttpClientHandler false
NSUrlSessionHandler ne définissez pas
CFNetworkHandler ne définissez pas

Modifications d’autres éléments

Le tableau suivant montre comment faire correspondre d’autres éléments des projets Xamarin Apple aux projets .NET :

Élément Description .NET Conversion de projet
LinkDescription Fichiers XML supplémentaires pour l’éditeur de liens géré. C’est la même chose Copier

Modifications apportées à Info.plist

Certaines valeurs ont été déplacées de Info.plist vers le fichier projet.

MinimumOSVersion et LSMinimumSystemVersion

Les propriétés MinimumOSVersion et LSMinimumSystemVersion doivent être converties en propriété SupportedOSPlatformVersion dans les projets .NET 8. Pour plus d’informations, consultez Vérifier que MinimumOSVersion est cohérent avec SupportedOSPlatformVersion.

Voir aussi