Cette page décrit la migration d'une application Android Cloud Endpoints version 1.0 existante vers Endpoints Frameworks pour App Engine. Notez que cette page fait référence à Endpoints version 1.0 en tant qu'Endpoints Frameworks version 1.0, et au nouveau framework Endpoints Frameworks pour App Engine en tant qu'Endpoints Frameworks version 2.0.
Avantages
Le nouveau framework présente de nombreux avantages, par exemple :
- Latence réduite des requêtes
- Meilleure intégration aux fonctionnalités d'App Engine, telles que les domaines personnalisés
- Compatibilité officielle avec les configurations Guice
- En option, de nouvelles fonctionnalités de gestion de l'API
Endpoints Frameworks version 2.0 n'a pas d'incidence sur les interfaces avec l'API. Les clients existants continuent de fonctionner après la migration sans aucune modification du code côté client.
Migrer des projets multimodules Android vers Endpoints Frameworks version 2.0
Les étapes suivantes vous guident lors du passage de projets Android Studio d'Endpoints Frameworks version 1.0 à Endpoints Frameworks version 2.0. Ici, nous migrons un projet Android Studio avec un module Endpoints.
Liste de tâches
Reportez-vous à la liste détaillée des tâches présentée ci-dessous tout au long du tutoriel. Dans ce guide de migration, nous supposons que vous disposez d'un projet Android utilisant un module Google Cloud.
- Avant de commencer
- Configurer la Google Cloud CLI
- Facultatif : Télécharger l'exemple de code
- Effectuer la migration vers Endpoints Frameworks version 2.0
- Déployer votre module backend
- Générer des bibliothèques clientes
Avant de commencer
- Installez Android Studio.
- Installez le SDK Android 26+.
- Installer gcloud CLI
Configurer gcloud CLI
Pour configurer la CLI gcloud :
Initialisez la gcloud CLI :
gcloud init
Utilisez les identifiants par défaut de l'application :
gcloud auth application-default login
Installez le composant
app-engine-java
:gcloud components install app-engine-java
Facultatif : Télécharger l'exemple de code
Pour cloner les exemples de projets legacy
et v2
à partir de GitHub, procédez comme suit :
Clonez l'exemple de dépôt sur votre ordinateur local :
git clone https://github.com/GoogleCloudPlatform/android-docs-samples
Accédez au répertoire contenant l'exemple de code pour
legacy
etv2
:cd android-docs-samples/endpoints-frameworks/
Effectuer la migration vers Endpoints Frameworks version 2.0
Mettre à jour le fichier build.gradle
Les dépendances Endpoints Frameworks version 2.0 utilisent Guava 19, et le plug-in de compilation Android Gradle com.android.tools.build:gradle:2.3.3
utilise Guava 18. Ajoutez Guava 19 à la fermeture des dépendances de script de compilation de build.gradle
pour remplacer cette dépendance transitive.
Ancienne
v2
Mettre à jour le fichier app/build.gradle
Dans Endpoints version 1.0, vous avez généré un document de découverte d'API à l'aide du plug-in Gradle (gradle-appengine-plugin
). Dans Endpoints Frameworks version 2.0, vous le générez au moyen du plug-in endpoints-framework-gradle-plugin
.
Ce script de compilation utilise le plug-in côté client com.google.cloud.tools.endpoints-framework-client
.
Ancienne
v2
Mettre à jour le fichier backend/build.gradle
Les outils Gradle de l'environnement standard App Engine ont été mis à jour.
Les projets Endpoints Frameworks version 1.0 utilisaient le plug-in gradle-appengine-plugin
fourni dans com.google.appengine
, tandis que les projets Endpoints Frameworks version 2.0 utilisent appengine-gradle-plugin
.
Ce script de compilation utilise le plug-in côté serveur com.google.cloud.tools.endpoints-framework-server
.
Ancienne
v2
Mettre à jour le fichier web.xml
Dans Endpoints Frameworks version 2.0, la classe de servlet est passée de SystemServiceServlet
à EndpointsServlet
.
Le format d'URL est passé de /_ah/spi/*
à /_ah/api/*
.
Ancienne
v2
Recréez le projet
Enfin, utilisez la liste de compilation d'Android Studio pour nettoyer et recompiler le projet Android Studio avec les nouvelles dépendances.
Déployer votre module backend
Le nouveau plug-in Gradle App Engine Plugin est maintenant utilisé pour déployer le module backend à l'aide de la tâche Gradle suivante dans le module backend
:
gradle appengineDeploy
Générer des bibliothèques clientes
Pour générer des bibliothèques clientes, utilisez la tâche Gradle suivante dans le module backend
, procédez comme suit :
gradle endpointsClientLibs
Obtenez plus d'informations sur les tâches disponibles pour le plug-in Gradle Endpoint Frameworks.
Ajouter la gestion des API Endpoints
Endpoints Frameworks version 2.0 vous permet également d'activer les fonctionnalités de gestion des API, par exemple :
- Gestion des clés API
- Partage de l'API
- Authentification des utilisateurs
- Métriques de l'API
- Journaux de l'API
Pour vous familiariser avec ces fonctionnalités et d'autres fonctionnalités de Cloud Endpoints Frameworks 2.0, consultez la page Java concernant Endpoints Frameworks pour App Engine.