Condividi tramite


Supporto AOT nativo per piattaforme simili a iOS

A partire da .NET 9, Native AOT supporta la destinazione di piattaforme simili a iOS. Il termine piattaforme simili a iOS si riferisce alle piattaforme Apple che usano API simili, ad esempio: iOS, MacCatalyst e tvOS.

In base al caso d'uso, il supporto può essere suddiviso in:

  • supporto per applicazioni e librerie che fanno riferimento alle API specifiche del sistema operativo
  • supporto per applicazioni e librerie senza dipendenze API specifiche del sistema operativo

Supporto per applicazioni e librerie che fanno riferimento alle API specifiche del sistema operativo

Questo si riferisce a progetti MAUI .NET destinati a framework di destinazione specifici del sistema operativo (ad esempio: net9.0-ios). Come abilitare AOT nativo per le app .NET MAUI, vedere Distribuzione AOT nativa in iOS e Mac Catalyst.

Supporto per applicazioni e librerie senza dipendenze API specifiche del sistema operativo

Questo si riferisce a progetti .NET destinati al framework di destinazione generale o non specifico del sistema operativo (ad esempio: net9.0), per cui è possibile abilitare AOT nativo nel modo seguente:

  1. Includere le proprietà seguenti nel file di progetto:

    <PublishAot>true</PublishAot>
    <PublishAotUsingRuntimePack>true</PublishAotUsingRuntimePack>
    
  2. Pubblicare il progetto per la piattaforma di destinazione di tipo iOS desiderata specificando un identificatore di runtime adeguato (indicato più avanti come <rid>):

    • ios-arm64, per i dispositivi fisici iOS
    • iossimulator-arm64 o iossimulator-x64, per i simulatori iOS
    • maccatalyst-arm64 o maccatalyst-x64, per Mac Catalyst
    • tvos-arm64, per dispositivi fisici tvOS
    • tvossimulator-arm64 o tvossimulator-x64, per simulatori di tvOS

    ed eseguire il comando seguente:

    dotnet publish -r <rid>
    

Per informazioni specifiche sulla creazione e l'uso di librerie native su piattaforme simili a iOS, vedere Come creare e usare framework personalizzati con AOT nativo per piattaforme simili a iOS.