Set Up the AWS Mobile SDK for Unity - AWSMobile SDK for Unity

DieAWSMobile SDK for Unity ist jetzt imAWS SDK for .NETaus. Dieser Leitfaden verweist auf die archivierte Version des Mobile SDK for Unity. Weitere Informationen finden Sie unterWas ist ?AWSMobile SDK for Unity?

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Set Up the AWS Mobile SDK for Unity

Um die Arbeit mit AWS Mobile SDK for Unity zu beginnen, können Sie das SDK einrichten und ein neues Projekt erstellen oder das SDK in ein vorhandenes Projekt zu integrieren. Sie können auch die Beispiele klonen und ausführen, um eine Vorstellung von der Funktionsweise des SDKs zu erhalten.

Voraussetzungen

Damit Sie AWS Mobile SDK for Unity verwenden können, müssen folgende Voraussetzungen erfüllt sein:

  • Ein AWS-Konto

  • Unity Version 4.x oder 5.x (Unity 4.6.4p4 oder Unity 5.0.1p3 wird benötigt, wenn Sie Anwendungen für die 64-Bit-Version von iOS schreiben möchten)

Wenn die Voraussetzungen erfüllt sind, müssen Sie folgende Schritte durchführen:

  1. Laden Sie AWS Mobile SDK for Unity herunter.

  2. Konfigurieren Sie AWS Mobile SDK for Unity.

  3. Rufen Sie AWS-Anmeldeinformationen mit Amazon Cognito ab.

Schritt 1: Herunterladen von AWS Mobile SDK for Unity

Laden Sie zunächst AWS Mobile SDK for Unity herunter. Jedes Paket im SDK wird für den entsprechenden AWS-Service – basierend auf dem Namen des Pakets – benötigt. Zum Beispiel, dasaws-unity-sdk-dynamodb-2.1.0.0.unitypackage wird verwendet, um den Service AWS DynamoDB aufzurufen. Sie können alle Pakete oder nur diejenigen importieren, die Sie nutzen möchten.

  1. Öffnen Sie den Unity-Editor und erstellen Sie mit den Standardeinstellungen ein neues leeres Projekt.

  2. Wählen Sie Assets > Import Package > Custom Package.

  3. Navigieren Sie im Dialogfeld Import package zu den zu verwendenden .unitypackage-Dateien und wählen Sie diese aus.

  4. Prüfen Sie im Dialogfeld Importing package, ob alle relevanten Elemente ausgewählt sind. Klicken Sie dann auf Import.

Schritt 2: Konfigurieren von AWS Mobile SDK for Unity

Erstellen einer Szene

Sie können die Arbeit mit AWS Mobile SDK for Unity beginnen, indem Sie die folgende Codezeile in die Methode Start oder Awake der Klasse mit eindimensionalem Verhalten einfügen:

UnityInitializer.AttachToGameObject(this.gameObject);

Erstellen Sie die Szene, indem Sie New Scene im Menü File wählen.

AWS SDK for Unity enthält Client-Klassen für jeden unterstützten AWS-Service. Diese Clients sind so konfiguriert, dass eine Datei namens awsconfig.xml verwendet wird. Der folgende Abschnitt beschreibt die am häufigsten in der Datei awsconfig.xml verwendeten Einstellungen. Weitere Informationen zu diesen Einstellungen finden Sie unter Unity SDK API Reference.

Festlegen der Standardregion für den AWS-Service

Konfigurieren Sie die Standardregion für alle Service-Clients wie folgt:

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

Dadurch wird die Standardregion für alle Service-Clients im Unity SDK festgelegt. Diese Einstellung kann überschrieben werden, indem Sie die Region explizit zum Zeitpunkt der Erstellung einer Instance des Service-Clients angeben, z. B.:

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

Festlegen der Protokolleinstellungen

Protokolleinstellungen werden wie folgt angegeben:

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

Diese Einstellung wird verwendet, um die Protokollierung in Unity zu konfigurieren. Wenn Sie sich bei UnityLogger anmelden, schreibt das Framework die Ausgabe intern in die Debug-Protokolle. Sollen die HTTP-Antworten protokolliert werden, setzen Sie das Flag logResponses. Die Werte: „Always“, „Never“ undOnErroraus. Sie können unter Verwendung der Eigenschaft logMetrics auch Leistungskennzahlen zu HTTP-Anforderungen protokollieren lassen. Das Protokollformat kann mitLogMetricsFormateigenschaft, gültig sind die Werte „JSON“ und „standard“.

Das folgende Beispiel zeigt die am häufigsten in der Datei awsconfig.xml verwendeten Einstellungen. Weitere Informationen zu bestimmten Service-Einstellungen finden Sie im Service-Abschnitt unten:

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

Das SDK verwendet für plattformspezifische Komponenten die Spiegelung. Wenn Sie das Backend IL2CPP für die Skripterstellung verwenden, ist strip bytecode für iOS immer aktiviert. Sie benötigen also eine link.xml-Datei mit folgenden Einträgen im Assemblierungs-Root:

<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>

Schritt 3: Abrufen der Identitätenpool-ID mit Amazon Cognito

Um AWS-Services in einer mobilen Anwendung zu nutzen, müssen Sie die Identitäten-Pool-ID mit Amazon Cognito Identity abrufen. Wenn Sie Amazon Cognito zum Abrufen der Identitäten-Pool-ID verwenden, kann die App auf AWS-Services zugreifen, ohne dass Sie Ihre persönlichen Anmeldeinformationen in die Anwendung einbetten müssen. Außerdem ermöglicht dieses Vorgehen das Festlegen der Zugriffsrechte, um zu steuern, auf welche AWS-Services die Benutzer zugreifen dürfen.

Zur Vorbereitung der Nutzung von Amazon Cognito müssen Sie einen Identitäten-Pool erstellen. Ein Identitäten-Pool ist eine Speicher von Benutzer-Identitätsdaten, die speziell für Ihr Konto gelten. Jeder Identitäten-Pool verfügt über konfigurierbare IAM-Rollen, mit denen Sie festlegen können, auf welche AWS-Services Benutzer der Anwendung zugreifen können. Üblicherweise verwenden Entwickler einen Identitäten-Pool pro Anwendung. Weitere Informationen zu Identitäten-Pools erhalten Sie im Entwicklerhandbuch von Amazon Cognito.

Erstellen Sie einen neuen Identitäten-Pool für die Anwendung wie folgt:

  1. Melden Sie sich bei der Amazon Cognito-Konsole an und klicken Sie auf Create new identity pool.

  2. Geben Sie einen Namen für den Identitäten-Pool ein und aktivieren Sie das Kontrollkästchen, um den Zugriff für nicht authentifizierte Identitäten zu aktivieren. Klicken Sie zum Erstellen des Identitäten-Pools auf Create Pool (Pool erstellen).

  3. Klicken Sie auf Allow (Zulassen), um die zwei Ihrem Identitäten-Pool zugeordneten Standardrollen zu erstellen: eine für nicht authentifizierte Benutzer und eine für authentifizierte Benutzer. Diese Standardrollen ermöglichen dem Identitäten-Pool den Zugriff auf Cognito Sync und Mobile Analytics.

Auf der nächsten Seite wird Code gezeigt, der einen Anmeldeinformationsanbieter erstellt, damit Sie Cognito Identity ganz einfach in die Unity-Anwendung integrieren können. Das Anmeldeinformationsanbieter-Objekt übergeben Sie an den Konstruktor des verwendeten AWS-Clients. Der Code sieht folgendermaßen aus:

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

Nächste Schritte