Primeros pasos para desarrollar una Huawei App

Para desarrollar y publicar una App en App Gallery, primero debes crear un Proyecto en App Gallery Connect (AGC), esto te permitirá conectar con los kits de desarrollo y con los servicios de AGC. En este artículo voy a explicarte la configuración básica en AGC y en tu Proyecto android, de esta forma tu app estará preparada para implementar el kit de HMS que desees.

Requisitos previos

Una cuenta de desarrollador verificada

Necesitas una cuenta de desarrollador para acceder a la consola de AGC, si no cuentas con una, puedes seguir esta guía para registrarte como desarrollador

Creando el proyecto

Una vez creada tu cuenta, el primer paso es crear un proyecto.

Inicia session en la consola de App Gallery Connect y selecciona “My Projects”

Haz clic en el botón “Add project”

Asigna un nombre a tu proyecto y pulsa Ok

AGC tardará un par de segundos en construir el proyecto, una vez que seas redirigido al panel principal de tu proyecto, haz clic en “Add app”.

Ingresa la información básica de tu app:

  • Platform: Algunos Kits de HMS y servicios de AGC son capácces de correr en plataformas como IOS, selecciona la plataforma para la que desarrollarás tu royecto.
  • Device: Mobile Phone es la única opción para este campo
  • App Name: Será el nombre de tu Proyecto en la consola
  • Package Name: El nombre de paquete de tu app. Debe ser igual al campo “Application Id” en tu archivo build.gradle.
  • App Category: Elige entre App o Game
  • Default language: selecciona el lenguaje que tu app soporta por defecto, considera los países donde piensas publicar tu app.

Creando el Proyecto Android

Si ya tienes un Proyecto creado, puedes saltar hasta “Configurando la firma en el archivo build.gradle”

Crea un Nuevo Proyecto en Android Studio seleccionando File > New > New Project.

Para el SDK mínimo revisa esta tabla para saber cuál es la versión mínima soportada de Android android/EMUI para los kits que quieres usar.

Creando la firma de la app

AGC utiliza la hualle digital de tu firma como medio de autenticación, cuando tu app trata de consumer un servicio de Huawei, la huella digial será comparada contra la que registres en AGC. Si la huella digital no coincide, tu app no funcionará adecuadamente. Por ejemplo, en el caso de Maps, el mapa no será desplegado y en el caso de Push, la app no podrá obtener el token necesario para recibir notificaciones.

Ve a “Build” y selecciona “Generate signed Bundle/APK”. Elige APK y haz clic en “next”

En el siguiente diálogo haz clic en “Create New”

Llena la información requerida y asigna contraseñas para el keystore y el key alias.

Para “key store path” te recomiendo usar la carpeta “app” de tu proyecto.

Haz clic en OK y marca la casilla “Remember passwords”, luego haz clic en siguiente.

Habilita las 2 versiones de firma, selecciona “release” y haz clic en “Finish”

Configurando la firma en el archivo build.gradle

Agrega la siguiente configuración a tu archivo build.gradle (modulo app), de este modo las builds debug y reléase tendrán la misma firma y huella digital.

signingConfigs {
release {
storeFile file(“example.jks”)
keyAlias ‘example’
keyPassword ‘example123’
storePassword ‘example123’
v1SigningEnabled true
v2SigningEnabled true
}
}

buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled false
proguardFiles getDefaultProguardFile(‘proguard-android-optimize.txt’), ‘proguard-rules.pro’
}
debug {
signingConfig signingConfigs.release
debuggable true
}
}

Presiona el botón “Sync project with gradle files”.

Configurando el Data processing location (DPL)

Algunos servicios de AGC requieren que selecciones un DPL. Esta ubicación determina la infraestructura usada por AGC para porporcionar los servicios a tu app.

Al configurar un DPL, tu app sólo podrá ser lanzada en los países dónde dicho DPL tenga cobertura. Si tu app requiere un DPL y quieres lanzar tu app en todo el mundo, tendrás que crear un proyecto para cada DPL y así cubrir todos los territorios. Si queres lanzar tu app en todo el mundo, no configures un DPL a menos que sea absolutamente necesario para tu app. Puedes revisar este documento para saber si tu app requerirá seleccionar un DPL.

Para añadir un DPL haz clic en el botón “set” y selecciona la ubicación que cubra todos o la mayoría de países dónde queras publicar tu app.

Agregando la huella digital

Regresa a Android Studio y abre el panel de “gradle” a la derecha, luego ejecuta la tarea “signing report”.

Se abrirá el panel “Run” en la parte inferior de la pantalla. Copia el valor del campo SHA-256.

Pega y guarda tu huella digital en App Gallery Connect

Agregando el SDK de HMS

Descarga tu archivo de configuración agconnect-services.json desde la consola.

Guarda tu archivo en la carpeta “app” de tu proyecto. Si estás usando product flavors, guarda el json en la carpeta raíz de tu flavor.

Agrega el repositorio maven y la dependencia de AGC a tu build.gradle a nivel de proyecto.

// Top-level build file where you can add configuration options common to all sub-projects/modules.buildscript {    repositories {        google()        jcenter()        maven {url 'http://developer.huawei.com/repo/'}    }    dependencies {        classpath "com.android.tools.build:gradle:4.0.0"        classpath 'com.huawei.agconnect:agcp:1.3.1.300'        // NOTE: Do not place your application dependencies here; they belong        // in the individual module build.gradle files    }}allprojects {    repositories {        google()        jcenter()        maven {url 'http://developer.huawei.com/repo/'}    }}task clean(type: Delete) {    delete rootProject.buildDir}

Ahora agrega el SDK de HMS y el plugin de AGC a tu build.gradle módulo app.

apply plugin: 'com.android.application'apply plugin: 'com.huawei.agconnect'dependencies {    implementation fileTree(dir: "libs", include: ["*.jar"])    implementation 'androidx.appcompat:appcompat:1.1.0'    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'    //HMS    implementation 'com.huawei.agconnect:agconnect-core:1.3.0.300'    testImplementation 'junit:junit:4.12'    androidTestImplementation 'androidx.test.ext:junit:1.1.1'    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'}

Para terminar, sincroniza tu Proyecto con gradle.

Conclusión

Ahora tu app está lista para comenzar a integrar los kits de HMS y los servicios de AGC. Puedes volver a revisar esta guia cada vez que quieras desarrollar un app que funcione en teléfonos Huawei.

--

--