Creare un'app iOS con l'interfaccia della riga di comando di .NET

In questa esercitazione si apprenderà come creare ed eseguire un'app dell'interfaccia utente dell'app multipiattaforma .NET (.NET MAUI) in iOS usando l'interfaccia della riga di comando di .NET in macOS:

  1. Per creare app MAUI .NET, è necessario scaricare ed eseguire il programma di installazione per il runtime .NET più recente. Dovrai anche scaricare e installare la versione più recente di Xcode, disponibile anche dall'app App Store sul mac.

  2. Nel Mac aprire Terminale e verificare che sia installato il runtime .NET più recente:

    dotnet --version
    
  3. In Terminale installare la build pubblica più recente di .NET MAUI:

    sudo dotnet workload install maui --source https://api.nuget.org/v3/index.json
    

    Questo comando installerà la versione rilasciata più recente di .NET MAUI, inclusi gli SDK della piattaforma necessari.

  4. In Terminale creare una nuova app MAUI .NET usando l'interfaccia della riga di comando di .NET:

    dotnet new maui -n "MyMauiApp"
    
  1. In Terminale modificare la directory in MyMauiApp ed eseguire l'app:

    cd MyMauiApp
    dotnet build -t:Run -f net8.0-ios
    

    Il dotnet build comando ripristinerà il progetto le dipendenze, compilerà l'app e la avvierà nel simulatore predefinito.

  2. Nel simulatore predefinito premere più volte il pulsante Fai clic su di me e osservare che il numero di clic del pulsante viene incrementato.

    App MAUI .NET in esecuzione nel simulatore iOS predefinito.

Compilare con una versione specifica di Xcode

Se nel Mac sono installate più versioni di Xcode, è possibile specificare quale versione Xcode deve essere usata durante la compilazione dell'app. Esistono diversi approcci che è possibile usare per eseguire questa operazione, ma l'approccio consigliato consiste nell'impostare la MD_APPLE_SDK_ROOT variabile di ambiente sul percorso della versione Xcode.

Avviso

L'uso xcode-select -s di per impostare la versione di Xcode da usare non è consigliato.

Per impostare la MD_APPLE_SDK_ROOT variabile di ambiente per la durata della sessione del terminale corrente:

  1. Aprire l'applicazione Terminale .

  2. Digitare il comando seguente, sostituendo la versione di Xcode e premere INVIO:

    export MD_APPLE_SDK_ROOT=/Applications/Xcode_14.1.0.app
    

Se si vuole impostare questa variabile di ambiente in modo permanente, è possibile aggiungere il export comando al profilo della shell, ad esempio .zprofile.

Avviare l'app in un simulatore specifico

Un'app IOS .NET MAUI può essere avviata in un simulatore iOS specifico da un Mac fornendo l'ID dispositivo univoco (UDID):

  1. Nel Mac aprire Xcode, selezionare la voce di menu Dispositivi e simulatori Windows > e quindi la scheda Simulatori.

    Screenshot della scheda Simulatori Xcode.

  2. Fare clic con il pulsante destro del mouse sul simulatore scelto e scegliere Copia identificatore per copiare l'UDID negli Appunti.

    Screenshot dell'opzione di menu dell'identificatore di copia in Xcode.

    In alternativa, è possibile recuperare un elenco di valori UDID eseguendo il simctl list comando :

    /Applications/Xcode.app/Contents/Developer/usr/bin/simctl list
    
  1. In Terminale compilare l'app ed eseguirla nel simulatore scelto specificando la _DeviceName proprietà MSBuild usando l'opzione -pMSBuild:

    dotnet build -t:Run -f net8.0-ios -p:_DeviceName=:v2:udid=MY_SPECIFIC_UDID
    

    Ad esempio, usare il comando seguente per compilare l'app ed eseguirla nel simulatore i Telefono 13 Pro:

    dotnet build -t:Run -f net8.0-ios -p:_DeviceName=:v2:udid=E25BBE37-69BA-4720-B6FD-D54C97791E79
    
  2. Nel simulatore scelto premere più volte il pulsante Fai clic su di me e osservare che il numero di clic del pulsante viene incrementato.

    App MAUI .NET in esecuzione in i Telefono simulatore 13 Pro.

Avviare l'app in un dispositivo

È necessario effettuare il provisioning di un dispositivo prima di poter distribuire un'app iOS. Per altre informazioni, vedere Provisioning dei dispositivi per iOS. Dopo aver eseguito il provisioning di un dispositivo, è possibile avviare un'app IOS .NET MAUI nel dispositivo da un Mac fornendo l'ID dispositivo univoco (UDID):

  1. Connessione il dispositivo al Mac locale con un cavo USB.

  2. Aprire Xcode e passare a Dispositivi e simulatori finestra>.

  3. In Xcode selezionare la scheda Dispositivi e selezionare il dispositivo dall'elenco dei dispositivi connessi.

  4. In Xcode copiare il valore dell'identificatore negli Appunti:

    Dispositivi Xcode e finestra del simulatore con la posizione della stringa dell'identificatore iOS evidenziata.

    In alternativa, fare clic con il pulsante destro del mouse sul dispositivo e scegliere Copia identificatore per copiare l'UDID negli Appunti.

  1. In Terminale compilare l'app ed eseguirla nel simulatore scelto specificando la _DeviceName proprietà MSBuild usando l'opzione -pMSBuild:

    dotnet build -t:Run -f net8.0-ios -p:RuntimeIdentifier=ios-arm64 -p:_DeviceName=MY_SPECIFIC_UDID
    

    Sostituire "MY_SPECIFIC_UDID" con l'identificatore del dispositivo copiato negli Appunti.