Condividi tramite


Migrazione del progetto Apple Xamarin

Un progetto .NET 8 per un'app .NET per iOS è simile all'esempio seguente:

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

Per un progetto di libreria, omettere completamente la $(OutputType) proprietà o specificare Library come valore della proprietà.

Modifiche alle proprietà di MSBuild

La tabella seguente illustra come eseguire il mapping delle proprietà nei progetti Xamarin Apple ai progetti .NET:

Proprietà Descrizione .NET Conversione del progetto
MtouchExtraArgs Argomenti aggiuntivi per mtouch. Alcuni argomenti sono ancora applicabili, alcuni argomenti non lo sono. Copia
MtouchArch Architetture dell'app. N/D Convertire in RuntimeIdentifier. Per altre informazioni, vedere Convertire in RuntimeIdentifier.
XamMacArch Architetture dell'app. N/D Convertire in RuntimeIdentifier. Per altre informazioni, vedere Convertire in RuntimeIdentifier.
HttpClientHandler Oggetto HttpClientHandler predefinito. UseNativeHttpHandler Convertire in UseNativeHttpHandler. Per altre informazioni, vedere Converti in UseNativeHttpHandler.
MtouchHttpClientHandler Impostazione predefinita MtouchHttpClientHandler. UseNativeHttpHandler Convertire in UseNativeHttpHandler. Per altre informazioni, vedere Converti in UseNativeHttpHandler.
EnableCodeSigning Specifica se la firma del codice è abilitata. Copia
CodeSigningKey Specifica la chiave di firma del codice. Rinominare in CodesignKey
CodesignKey Specifica la chiave di firma del codice. Copia
CodesignProvision Specifica il profilo di provisioning. Copia
CodesignEntitlements Percorso del file entitlements. Copia
CodesignExtraArgs Argomenti aggiuntivi per la firma del codice. Copia
PackageSigningKey Specifica la chiave di firma del codice per firmare il pacchetto. Copia
PackagingExtraArgs Specifica gli argomenti aggiuntivi dello strumento di creazione pacchetti. Copia
ProductDefinition Percorso del file di definizione del prodotto da utilizzare per la creazione del pacchetto. Copia
MtouchEnableSGenConc Rinominare in EnableSGenConc.
EnableSGenConc Copia

Eseguire la conversione in RuntimeIdentifier

La tabella seguente illustra come convertire le MtouchArch proprietà e XamMacArch nella RuntimeIdentifier proprietà o la proprietà durante la RuntimeIdentifiers migrazione di un progetto Xamarin.iOS in .NET per iOS:

Valore 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

Importante

Se sono presenti più identificatori di runtime, usare la RuntimeIdentifiers proprietà anziché la RuntimeIdentifier proprietà .

La tabella seguente illustra come convertire le MtouchArch proprietà e XamMacArch nella proprietà durante la RuntimeIdentifier migrazione di un progetto Xamarin.Mac a .NET per macOS+:

Proprietà RuntimeIdentifier
x86_64 osx-x64

La tabella seguente illustra come convertire le MtouchArch proprietà e XamMacArch nella proprietà durante la RuntimeIdentifier migrazione di un progetto Xamarin.tvOS a .NET per tvOS:

Proprietà RuntimeIdentifier
ARM64 tvos-arm64
x86_64 tvossimulator-x64

Per altre informazioni sulla RuntimeIdentifier proprietà, vedere RuntimeIdentifier. Per altre informazioni sugli identificatori di runtime, vedere Catalogo RID .NET.

Converti in UseNativeHttpHandler

Nella tabella seguente viene illustrato come convertire le HttpClientHandler proprietà e MtouchHttpClientHandler nella proprietà durante la UseNativeHttpHandler migrazione di un progetto Xamarin Apple a .NET 8:

Valore UseNativeHttpHandler
HttpClientHandler false
NSUrlSessionHandler non impostare
CFNetworkHandler non impostare

Modifiche ad altri elementi

La tabella seguente illustra come eseguire il mapping di altri elementi nei progetti Xamarin Apple ai progetti .NET:

Articolo Descrizione .NET Conversione del progetto
LinkDescription File XML aggiuntivi al linker gestito. Identici Copia

Modifiche apportate a Info.plist

Alcuni valori sono stati spostati da Info.plist al file di progetto.

MinimumOSVersion e LSMinimumSystemVersion

Le MinimumOSVersion proprietà e LSMinimumSystemVersion devono essere convertite nella SupportedOSPlatformVersion proprietà nei progetti .NET 8. Per altre informazioni, vedere Verificare che MinimumOSVersion sia coerente con SupportedOSPlatformVersion.

Vedi anche