Utilisation d'un kit SDK Android généré par API Gateway pour une API REST - Amazon API Gateway

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation d'un kit SDK Android généré par API Gateway pour une API REST

Dans cette section, nous décrivons les étapes pour utiliser un kit SDK Android généré par API Gateway pour une API REST. Avant de continuer, vous devez avoir déjà suivi la procédure de Génération des kits SDK pour une API à l'aide de la console API Gateway.

Note

Le kit SDK généré n'est pas compatible avec Android 4.4 et versions antérieures. Pour de plus amples informations, veuillez consulter Remarques importantes concernant Amazon API Gateway.

Pour installer et utiliser un kit SDK Android généré par API Gateway
  1. Extrayez le contenu du fichier .zip généré par API Gateway que vous avez téléchargé plus tôt.

  2. Téléchargez et installez Apache Maven (de préférence version 3.x).

  3. Téléchargez et installez le kit JDK 8.

  4. Définissez la variable d'environnement JAVA_HOME.

  5. Exécutez la commande mvn install pour installer les fichiers d'artefact compilés dans votre référentiel Maven local. Cela crée un dossier target contenant la bibliothèque de kits SDK compilés.

  6. Copiez le fichier du kit SDK (dont le nom est dérivé des valeurs que vous avez spécifiées dans les champs ID d’artifact et Version d’artifact lors de la génération du kit SDK, par exemple,simple-calcsdk-1.0.0.jar ) du dossier target, ainsi que toutes les autres bibliothèques du dossier target/lib, dans le dossier lib de votre projet.

    Si vous utilisez Android Studio, créez un dossier libs sous le module de votre application client et copiez le fichier .jar requis dans ce dossier. Vérifiez que la section des dépendances dans le fichier gradle du module contient le code suivant.

    compile fileTree(include: ['*.jar'], dir: 'libs') compile fileTree(include: ['*.jar'], dir: 'app/libs')

    Assurez-vous qu'aucun fichier .jar dupliqué n'est déclaré.

  7. Utilisez la classe ApiClientFactory pour initialiser le kit SDK généré par API Gateway. Exemples :

    ApiClientFactory factory = new ApiClientFactory(); // Create an instance of your SDK. Here, 'SimpleCalcClient.java' is the compiled java class for the SDK generated by API Gateway. final SimpleCalcClient client = factory.build(SimpleCalcClient.class); // Invoke a method: // For the 'GET /?a=1&b=2&op=+' method exposed by the API, you can invoke it by calling the following SDK method: Result output = client.rootGet("1", "2", "+"); // where the Result class of the SDK corresponds to the Result model of the API. // // For the 'GET /{a}/{b}/{op}' method exposed by the API, you can call the following SDK method to invoke the request, Result output = client.aBOpGet(a, b, c); // where a, b, c can be "1", "2", "add", respectively. // For the following API method: // POST / // host: ... // Content-Type: application/json // // { "a": 1, "b": 2, "op": "+" } // you can call invoke it by calling the rootPost method of the SDK as follows: Input body = new Input(); input.a=1; input.b=2; input.op="+"; Result output = client.rootPost(body); // where the Input class of the SDK corresponds to the Input model of the API. // Parse the result: // If the 'Result' object is { "a": 1, "b": 2, "op": "add", "c":3"}, you retrieve the result 'c') as String result=output.c;
  8. Pour utiliser un fournisseur d'informations d'identification Amazon Cognito afin d'autoriser les appels à votre API, utilisez la classe ApiClientFactory pour transmettre un ensemble d'informations d'identification AWS à l'aide du kit SDK généré par API Gateway, comme illustré dans l'exemple suivant.

    // Use CognitoCachingCredentialsProvider to provide AWS credentials // for the ApiClientFactory AWSCredentialsProvider credentialsProvider = new CognitoCachingCredentialsProvider( context, // activity context "identityPoolId", // Cognito identity pool id Regions.US_EAST_1 // region of Cognito identity pool ); ApiClientFactory factory = new ApiClientFactory() .credentialsProvider(credentialsProvider);
  9. Pour définir une clé API à l'aide du kit SDK généré par API Gateway, utilisez un code similaire au code suivant.

    ApiClientFactory factory = new ApiClientFactory() .apiKey("YOUR_API_KEY");