Configurazione dell'SDK AWS Mobile per Unity - AWSMobile SDK for Unity

LaAWSMobile SDK for Unity è ora incluso nel kit SDK MobileAWS SDK for .NET. Questa guida fa riferimento alla versione archiviata dell'SDK Mobile per Unity. Per ulteriori informazioni, consultaChe cos'è ?AWSMobile SDK for Unity?

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurazione dell'SDK AWS Mobile per Unity

Per iniziare a utilizzare AWS Mobile SDK for Unity, puoi configurare l'SDK e iniziare a creare un nuovo progetto oppure integrare l'SDK con un progetto esistente. Puoi anche clonare ed eseguire ilcampioniper avere un'idea di come funziona l'SDK.

Prerequisiti

Prima di poter utilizzare l'SDK AWS Mobile per Unity, è necessario avere a disposizione quanto segue:

  • Un account AWS

  • Unity versione 4.x o 5.x (Unity 4.6.4p4 o Unity 5.0.1p3 è necessario se si desidera scrivere applicazioni eseguite su iOS a 64 bit)

Dopo aver completato i prerequisiti, per iniziare a fare quanto segue:

  1. Scarica l'SDK AWS Mobile per Unity.

  2. Configurazione dell'SDK AWS Mobile per Unity.

  3. Ottieni credenziali AWS utilizzando Amazon Cognito.

Fase 1: Scarica l'SDK AWS Mobile per Unity

Prima di tuttoscarica l'SDK AWS Mobile per Unity. Ogni pacchetto nell'SDK è necessario per utilizzare il servizio AWS corrispondente in base al nome del pacchetto. Ad esempio, le ricetteaws-unity-sdkIl pacchetto -dynamodb-2.1.0.0.unitypackage viene utilizzato per chiamare il servizio AWS DynamoDB. È possibile importare tutti i pacchetti o solo quelli che intendi utilizzare.

  1. Apri l'editor Unity e crea un nuovo progetto vuoto, usa le impostazioni predefinite.

  2. SelezionaAsset >Pacchetto di importazione >Package Custom.

  3. NellaImportaPackage (Pacchetto), passare a e selezionare i file.unitypackage che si desidera utilizzare.

  4. NellaImportazione difinestra di dialogo pacchetto, assicurati che tutti gli elementi siano selezionati e fai clicImporta.

Fase 2: Configurazione dell'SDK AWS Mobile per Unity

Crea una scena

Quando si lavora con AWS SDK for Unity, è possibile iniziare a includere la seguente riga di codice nellaStartoAwakemetodo della tua classe di comportamento mono:

UnityInitializer.AttachToGameObject(this.gameObject);

Crea la tua scena scegliendoNuova scenadagliFilemenu.

L'SDK AWS per Unity contiene classi client per ogni servizio AWS supportato. Questi client sono configurati utilizzando un file denominatoawsconfig.xml. Nella sezione seguente vengono descritte le impostazioni più comunemente utilizzate nelawsconfig.xmlfile. Per ulteriori informazioni su queste impostazioni, consulta iInformazioni di riferimento delle API Unity SDK.

Impostazione della regione di servizio AWS predefinita

Per configurare l'area predefinita per tutti i client di servizio:

<aws region="us-west-2" />

Imposta l'area predefinita per tutti i client di servizio in Unity SDK. Questa impostazione può essere ignorata specificando esplicitamente la regione al momento della creazione di un'istanza del client di servizio, in questo modo:

IAmazonS3 s3Client = new AmazonS3Client(<credentials>,RegionEndpoint.USEast1);

Imposta le informazioni di registrazione

Le impostazioni di registrazione sono specificate come segue:

<logging logTo="UnityLogger" logResponses="Always" logMetrics="true" logMetricsFormat="JSON" />

Questa impostazione viene utilizzata per configurare la registrazione in Unity. Quando accedi aUnityLogger, il framework stampa internamente l'output nei registri di debug. Se si desidera registrare le risposte HTTP, impostare il flag LogResponses: i valori possono essere Sempre, Mai oOnError. È inoltre possibile registrare le metriche delle prestazioni per le richieste HTTP utilizzando la proprietà LogMetrics, il formato di log può essere specificato utilizzandoLogMetricsProprietà Format, i valori validi sono JSON o standard.

Nell'esempio seguente vengono mostrate le impostazioni più comunemente utilizzate nel file awsconfig.xml. Per ulteriori informazioni sulle impostazioni specifiche del servizio, vedere la sezione del servizio di seguito:

<?xml version="1.0" encoding="utf-8"?> <aws region="us-west-2" <logging logTo="UnityLogger" logResponses="Always" logMetrics="true" logMetricsFormat="JSON" /> />

L'SDK utilizza la riflessione per componenti specifici della piattaforma. Se si utilizza il backend di scripting IL2CPP,strip bytecodeè sempre abilitato su iOS, quindi è necessario avere a disposizionelink.xmlfile nella radice dell'assembly con le seguenti voci:

<linker> <!-- if you are using AWSConfigs.HttpClient.UnityWebRequest option--> <assembly fullname="UnityEngine"> <type fullname="UnityEngine.Networking.UnityWebRequest" preserve="all" /> <type fullname="UnityEngine.Networking.UploadHandlerRaw" preserve="all" /> <type fullname="UnityEngine.Networking.UploadHandler" preserve="all" /> <type fullname="UnityEngine.Networking.DownloadHandler" preserve="all" /> <type fullname="UnityEngine.Networking.DownloadHandlerBuffer" preserve="all" /> </assembly> <assembly fullname="mscorlib"> <namespace fullname="System.Security.Cryptography" preserve="all"/> </assembly> <assembly fullname="System"> <namespace fullname="System.Security.Cryptography" preserve="all"/> </assembly> <assembly fullname="AWSSDK.Core" preserve="all"/> <assembly fullname="AWSSDK.CognitoIdentity" preserve="all"/> <assembly fullname="AWSSDK.SecurityToken" preserve="all"/> add more services that you need here... </linker>

Fase 3: Ottieni l'ID del pool di identità utilizzando Amazon Cognito

Per utilizzare i servizi AWS nella tua applicazione mobile, devi ottenere l'ID del pool di identità utilizzando Amazon Cognito Identity. L'utilizzo di Amazon Cognito per ottenere l'ID del pool di identità consente alla tua app di accedere ai servizi AWS senza dover incorporare le credenziali private nella tua applicazione. Ciò consente inoltre di impostare le autorizzazioni per controllare i servizi AWS a cui gli utenti hanno accesso.

Per iniziare a utilizzare Amazon Cognito, devi creare un pool di identità. Un pool di identità è un archivio di dati sull'identità dell'utente specifici per il tuo account. Ogni pool di identità ha ruoli IAM configurabili che consentono di specificare a quali servizi AWS possono accedere agli utenti dell'applicazione. In genere, uno sviluppatore utilizza un pool di identità per applicazione. Per ulteriori informazioni sui pool di identità, consultare la sezioneGuida per sviluppatori di Amazon Cognito.

Per creare un pool di identità per la tua applicazione:

  1. Accedi alConsole Amazon Cognitoe clicca suCrea un nuovo pool di identità.

  2. Inserisci un nome per il pool di identità e seleziona la casella di controllo per abilitare l'accesso alle identità non autenticate. Fare clic suCrea poolper creare il pool di identità.

  3. Fare clic suAbilitaper creare i due ruoli predefiniti associati al pool di identità — uno per gli utenti non autenticati e uno per gli utenti autenticati. Questi ruoli predefiniti forniscono l'accesso del pool di identità a Cognito Sync e Mobile Analytics.

Nella pagina successiva viene visualizzato il codice che crea un provider di credenziali in modo da poter facilmente integrare Cognito Identity con l'applicazione Unity. Trasmetti l'oggetto provider di credenziali al costruttore del client di AWS in uso. Il codice sarà il seguente:

CognitoAWSCredentials credentials = new CognitoAWSCredentials ( "IDENTITY_POOL_ID", // Identity Pool ID RegionEndpoint.USEast1 // Region );

Fasi successive