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.