Funzionalità iCloud in Xamarin.iOS
L'aggiunta di funzionalità a un'applicazione spesso richiede un'ulteriore configurazione del provisioning. Questa guida illustra la configurazione necessaria per le funzionalità iCloud.
iCloud offre agli utenti iOS un modo semplice e pratico per archiviare contenuti e condividerli tra i dispositivi. Gli sviluppatori possono usare iCloud in quattro modi per offrire ai propri utenti un mezzo di archiviazione: archiviazione chiave-valore, archiviazione UIDocument, CoreData e uso diretto di CloudKit per l'archiviazione di singoli file e directory. Per altre informazioni su questi argomenti, vedere la guida Introduction to iCloud (Introduzione a iCloud).
L'aggiunta della funzionalità iCloud a un'applicazione è leggermente più complessa rispetto ad altri servizi app a causa dei contenitori. In iCloud i contenitori vengono usati per archiviare le informazioni per un'app e consentire la separazione di tutte le informazioni contenute in un singolo account iCloud, come il sandboxing nel dispositivo iOS di un utente. Per altre informazioni sui contenitori, vedere la guida Introduction to CloudKit (Introduzione a CloudKit).
Importante
Apple fornisce strumenti per aiutare gli sviluppatori a gestire correttamente il Regolamento generale sulla protezione dei dati (GDPR) dell'Unione Europea.
Centro per sviluppatori
Durante il provisioning di una nuova app tramite il centro sviluppatori è necessario eseguire due passaggi:
- Creare un contenitore
- Creare un ID app con la funzionalità iCloud e aggiungervi il contenitore.
- Creare un profilo di provisioning che includa questo ID app
La procedura seguente illustra questi passaggi:
Aprire il centro sviluppatori Apple e passare alla sezione Certificates, Identifiers, and Profiles (Certificati, identificatori e profili):
In Identifiers (Identificatori) selezionare iCloud Containers (Contenitori iCloud) e quindi selezionare il pulsante + per creare un nuovo contenitore:
Immettere un valore nel campo Description (Descrizione) e un valore univoco nel campo Identifier (Identificatore) per il contenitore iCloud:
Premere Continue (Continua), verificare che le informazioni siano corrette e premere Register (Registra) per creare il contenitore iCloud:
Per creare un nuovo ID app e aggiungervi un contenitore, seguire questa procedura:
Nel centro sviluppatori fare clic su App IDs (ID app) in Identifiers (Identificatori):
Selezionare il pulsante + per aggiungere un nuovo ID app:
Immettere un valore nel campo Name (Nome) per l'ID app e assegnargli un Explicit App ID (ID app esplicito):
In App Services (Servizi app) selezionare iCloud e scegliere Include CloudKit support (Includi supporto CloudKit):
Selezionare Continue (Continua) e quindi Register (Registra). Si noti che nella schermata di conferma iCloud viene visualizzato con la voce Configurable (Configurabile) selezionata, con un simbolo giallo:
Tornare all'elenco di ID app e selezionare quello appena creato:
Scorrere fino alla fine di questa sezione espansa e fare clic su Edit (Modifica):
Scorrere l'elenco verso il basso fino a iCloud e fare clic sul pulsante Edit (Modifica):
Selezionare il contenitore da usare con questo ID app:
Verificare le assegnazioni del contenitore e premere Assign (Assegna).
Questo ID app può ora essere usato per generare o rigenerare un nuovo profilo di provisioning, come descritto nella guida Working with Capabilities (Uso delle funzionalità).
Per altre informazioni sull'uso di iCloud, vedere le guide seguenti:
- Introduction to iCloud (Introduzione a iCloud)
- Introduction to CloudKit (Introduzione a CloudKit)
- Introduction to Document Picker (Introduzione a Selezione documento)
Passaggi successivi
Nell'elenco seguente vengono descritti i passaggi aggiuntivi che potrebbero essere necessari:
- Usare lo spazio dei nomi del framework nell'app.
- Aggiungere all'app gli entitlement necessari. Per informazioni dettagliate sugli entitlement necessari e su come aggiungerli, vedere la guida Uso degli entitlement.
- In Firma del bundle iOS dell'app assicurarsi che Entitlement personalizzati sia impostato su Entitlements.plist. Questa non è l'impostazione predefinita per le build di debug e del simulatore iOS.
In caso di problemi con i servizi app, vedere la sezione Troubleshooting (Risoluzione dei problemi) della guida principale.