Provisioning manuale per Xamarin.iOS

Dopo aver installato correttamente Xamarin.iOS, il passaggio successivo per lo sviluppo iOS consiste nell'eseguire il provisioning del dispositivo iOS. Questa guida illustra l'uso del provisioning manuale per configurare profili e certificati di sviluppo.

Nota

Le istruzioni in questa pagina sono utili per gli sviluppatori che hanno l'accesso a pagamento al programma Apple Developer. Se si ha un account gratuito, vedere la guida Provisioning gratuito per altre informazioni sui test dei dispositivi.

Creare un certificato di sviluppo

Il primo passaggio per configurare un dispositivo di sviluppo consiste nel creare un certificato di firma. Un certificato di firma è costituito da due elementi:

  • Un certificato di sviluppo
  • Una chiave privata

I certificati di sviluppo e le chiavi associate sono fondamentali per lo sviluppatore di iOS: essi stabiliscono l'identità dell'utente con Apple e lo associano a un determinato dispositivo e profilo per lo sviluppo ed equivalgono all'inserimento della propria firma digitale sulle applicazioni. Apple verifica i certificati per controllare l'accesso ai dispositivi che è possibile distribuire.

I team di sviluppo, i certificati e i profili possono essere gestiti mediante l'accesso alla sezione Certificates, Identifiers & Profiles (Certificati, identificatori e profili) di Apple's Members Center (accesso richiesto). Apple richiede un'identità di firma per compilare il proprio codice per il dispositivo o simulatore.

Importante

È importante notare che possono essere presenti solo due certificati di sviluppo iOS per volta. Se è necessario crearne altri, occorre revocarne uno esistente. Un computer con un certificato revocato non sarà in grado di firmare le app.

Prima di avviare il processo di provisioning manuale, è necessario assicurarsi di avere un account per sviluppatore Apple aggiunto in Visual Studio, come descritto nella Guida alla gestione degli account Apple. Dopo aver aggiunto l'account per sviluppatore Apple, eseguire le operazioni seguenti per generare un certificato di firma:

  1. Passare alla finestra Account per sviluppatori Apple in Visual Studio.

    1. Mac: Preferenze > di Visual Studio > Account Apple Developer
    2. Windows: Opzioni strumenti >> Account Apple Xamarin >
  2. Selezionare un team e fare clic su Visualizza dettagli...

  3. Fare clic su Crea certificato e selezionare Sviluppo Apple o Sviluppo iOS. Se si dispone delle autorizzazioni corrette, verrà visualizzata una nuova identità di firma dopo alcuni secondi.

Coppie di chiavi del certificato

Il profilo sviluppatore contiene i certificati, le relative chiavi e i profili di provisioning associati all'account. Esistono effettivamente due versioni di un profilo sviluppatore, una sul portale per sviluppatori e l'altra su un computer Mac locale. La differenza tra i due è il tipo di chiavi contenute: il profilo nel portale contiene tutte le chiavi pubbliche associate ai certificati, mentre la copia nel computer Mac locale contiene tutte le chiavi private. Affinché il certificato sia valido, le coppie di chiavi devono corrispondere.

Avviso

La perdita del certificato e delle chiavi associate può essere estremamente problematica, perché comporta la revoca dei certificati esistenti e la ripetizione del provisioning di tutti i dispositivi associati, inclusi quelli registrati per la distribuzione ad hoc. Dopo aver impostato correttamente i certificati di sviluppo, esportare una copia di backup e archiviarla in un luogo sicuro. Per altre informazioni su come eseguire questa operazione, vedere la sezione Exporting and Importing Certificates and Profiles (Esportazione e importazione di certificati e profili) della guida Maintaining Certificates (Manutenzione dei certificati) nella documentazione di Apple.

Effettuare il provisioning di un dispositivo iOS per lo sviluppo

Dopo aver stabilito l'identità con Apple e avere un certificato di sviluppo, è necessario configurare un profilo di provisioning e le entità necessarie in modo che sia possibile distribuire un'app in un dispositivo Apple. Nel dispositivo deve essere in esecuzione una versione di iOS supportata da Xcode; potrebbe essere necessario aggiornare il dispositivo, Xcode o entrambi.

Aggiungere un dispositivo

Quando si crea un profilo di provisioning per lo sviluppo, è necessario indicare quali dispositivi possono eseguire l'applicazione. A tale scopo, è possibile aggiungere fino a 100 dispositivi per anno di calendario al proprio portale per sviluppatori e da qui è possibile selezionare i dispositivi da aggiungere a un determinato profilo di provisioning. Completare i passaggi seguenti nel Mac per aggiungere un dispositivo al portale per sviluppatori

  1. Connettere il dispositivo per il quale eseguire il provisioning al compuer Mac con il cavo USB in dotazione.

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

  3. Nella scheda Dispositivi selezionare il dispositivo dal menu a sinistra.

  4. Evidenziare la stringa Identifier (Identificatore) e copiarla negli appunti:

    Xcode devices and simulator window with the iOS identifier string location highlighted.

  5. In un Web browser passare alla sezione Dispositivi nel portale per sviluppatori e fare clic sul + pulsante :

    Screenshot of the devices page on the Apple Developer site with the add button highlighted.

  6. Impostare la piattaforma corretta e specificare un nome per il nuovo dispositivo. Incollare l'identificatore copiato in precedenza nel campo ID dispositivo:

    Screenshot of the new device registration page with the fields correctly populated.

  7. Fare clic su Continua.

  8. Esaminare le informazioni e quindi fare clic su Registra.

Ripetere i passaggi precedenti per tutti i dispositivi iOS che verranno usati per testare o eseguire il debug di un'applicazione Xamarin.iOS.

Creare un profilo di provisioning di sviluppo

Dopo aver aggiunto il dispositivo al portale per sviluppatori, è necessario creare un profilo di provisioning e aggiungervi il dispositivo.

Prima di creare un profilo di provisioning, è necessario creare un App ID (ID app). Un ID app è una stringa di tipo DNS inverso che identifica in modo univoco un'applicazione. Nella procedura seguente viene illustrato come creare un Wildcard App ID (ID app con caratteri jolly), che consente di compilare e installare la maggior parte delle applicazioni. Gli Explicit App IDs (ID app espliciti) consentono di installare solo un'applicazione (con l'ID del bundle corrispondente) e vengono in genere usati per determinate funzionalità di iOS, ad esempio Apple Pay e HealthKit. Per informazioni sulla creazione di ID app espliciti, vedere la guida Working with Capabilities (Uso delle funzionalità).

Nuovo ID app con caratteri jolly

  1. Passare alla sezione Identificatori nel portale per sviluppatori e fare clic sul + pulsante .

  2. Selezionare ID app e fare clic su Continua.

  3. Specificare una descrizione. Impostare quindi Bundle ID ( ID bundle) su Wildcard (Carattere jolly ) e immettere un ID nel formato com.[DomainName].*:

    Screenshot of new App ID registration page with required fields populated.

  4. Fare clic su Continua.

  5. Esaminare le informazioni e quindi fare clic su Registra.

Nuovo profilo di provisioning

Dopo aver creato l'ID app, è possibile creare il profilo di provisioning. Questo profilo di provisioning contiene informazioni sull'app (o le app, se si tratta di un ID app con caratteri jolly) a cui si riferisce questo profilo, a chi può usare il profilo (a seconda dei certificati per sviluppatori aggiunti) e ai dispositivi che possono installare l'app.

Per creare manualmente un profilo di provisioning per lo sviluppo, eseguire le operazioni seguenti:

  1. Passare alla sezione Profili nel portale per sviluppatori e fare clic sul + pulsante .

  2. In Sviluppo selezionare Sviluppo di app iOS e fare clic su Continua.

  3. Selezionare l'ID app da usare dal menu a discesa e quindi fare clic su Continua.

  4. Selezionare i certificati da includere nel profilo di provisioning e quindi fare clic su Continua.

  5. Selezionare tutti i dispositivi in cui verrà installata l'app e quindi fare clic su Continua.

  6. Specificare Il nome del profilo di provisioning e quindi fare clic su Genera.

  7. Facoltativamente, è possibile fare clic su Scarica nella pagina successiva per scaricare il profilo di provisioning nel Mac.

Scaricare i profili di provisioning in Visual Studio

Dopo aver creato un nuovo profilo di provisioning nel portale per sviluppatori Apple, usare Visual Studio per scaricarlo in modo che sia disponibile per l'accesso al bundle nell'app.

  1. Passare alla finestra Account per sviluppatori Apple in Visual Studio.

    1. Mac: Preferenze > di Visual Studio > Account Apple Developer
    2. Windows: Opzioni strumenti >> Account Apple Xamarin >
  2. Selezionare il team e fare clic su Visualizza dettagli...

  3. Verificare che il nuovo profilo venga visualizzato nell'elenco Profili di provisioning. Potrebbe essere necessario riavviare Visual Studio per aggiornare l'elenco.

  4. Fare clic su Scarica tutti i profili.

Il nuovo profilo di provisioning sarà ora disponibile in Visual Studio e pronto per l'uso.

Eseguire la distribuzione in un dispositivo

A questo punto il provisioning è completo e l'applicazione è pronta per essere distribuita al dispositivo. A tale scopo, effettuare i passaggi seguenti:

  1. Connessione il dispositivo sul Mac.

  2. Aprire Info.plist e assicurarsi che l'identificatore bundle corrisponda all'ID app creato in precedenza (a meno che l'ID app non sia un carattere jolly).

  3. Nella sezione Firma selezionare Provisioning manuale come schema:

    Screenshot of Info.plist in Visual Studio for Mac with manual provisioning selected

  4. Fare clic su Opzioni di firma bundle...

  5. Assicurarsi che la configurazione della build sia impostata su Debug|i Telefono. Aprire entrambi i menu a discesa Identità di firma e Profilo di provisioning per verificare che siano elencati i certificati e i profili di provisioning corretti:

    iOS bundle signing property page with the provisioning profile dropdown menu open listing all the available provisioning profiles for the app.

  6. Selezionare un'identità e un profilo specifici da usare o lasciarlo automatico. Se impostato su Automatico, Visual Studio per Mac selezionerà l'identità e il profilo in base all'identificatore del bundle in Info.plist.

  7. Fare clic su OK.

  8. Fare clic su Esegui per distribuire l'app nel dispositivo.

Provisioning dei servizi delle applicazioni

Apple offre una selezione di servizi speciali per le applicazioni, denominati anche funzionalità, che possono essere attivati per un'applicazione Xamarin.iOS. Questi servizi per le applicazioni devono essere configurati sia nel portale di provisioning iOS quando viene creato l'ID app sia nel file Entitlements.plist che è parte del progetto dell'applicazione Xamarin.iOS. Per informazioni sull'aggiunta dei servizi per le applicazioni all'app, vedere la guida Introduction to Capabilities (Introduzione alle funzionalità) e la guida Working with Entitlements (Uso degli entitlement).

  • Creare un ID app con i servizi app necessari.
  • Creare un nuovo profilo di provisioning contenente tale ID app.
  • Impostare gli entitlement nel progetto Xamarin.iOS