Aviso: No hay documentación heredada disponible para este elemento, por lo que está viendo la documentación actual.
Implementar notificaciones push para tu aplicación Android ahora es posible con PushEngage. Simplemente integra el SDK una vez y permite que tu equipo de marketing envíe mensajes contextuales y personalizados a los usuarios de tu aplicación Android. Necesitarás la ayuda de tu desarrollador para que esto funcione para ti.
Configurar Proyecto de Firebase
Antes de empezar con las notificaciones push de la aplicación, debes asegurarte de tener una cuenta de Firebase existente.
1. Debes iniciar sesión en la consola de Firebase, usando tu cuenta de Google.
2. A continuación, debes hacer clic en Añadir proyecto o seleccionar un proyecto existente. Salta al paso 4 si eliges un proyecto existente.
3. Introduce un nombre de proyecto y haz clic en Continuar. En la siguiente pantalla, haz clic en Crear proyecto con todos los detalles mencionados.
4. Haz clic en el icono de Android para añadir una aplicación Android al proyecto.
5. En la siguiente pantalla, introduce el nombre del paquete de tu aplicación Android, dale el nombre a la aplicación Android que estás intentando integrar y haz clic en registrar.
6. Descarga el archivo google-services.json y colócalo en el directorio raíz del módulo de tu aplicación Android.
7. En la consola de Firebase, haz clic en el icono de Configuración junto a Descripción general del proyecto en la parte superior izquierda y Selecciona Configuración del proyecto. Haz clic en Generar nueva clave privada.
Guarda el archivo .json descargado del paso anterior de forma segura, ya que será necesario para configurarlo en el panel de PushEngage.
8. En la consola de Firebase, haz clic en el icono de Configuración junto a Descripción general del proyecto en la parte superior izquierda y selecciona “Configuración del proyecto”.
Selecciona la pestaña Cloud Messaging, debajo de la cual estará el ID del remitente.

Integración de FCM con el panel de PushEngage
Una vez que hayas creado el proyecto en Firebase, puedes integrar el ID del remitente en el panel de PushEngage.
1. En tu cuenta de PushEngage, navega a Configuración del sitio » Instalación
2. Al elegir tu plataforma, selecciona la pestaña SDK de Android.
3. Configura tu ID de remitente y el JSON de la cuenta de servicio

4. Copia el ID de la aplicación necesario para inicializar el SDK de PushEngage en tu aplicación.
Añadir dependencias del SDK
Ahora es el momento de añadir las dependencias del SDK. Añadimos la siguiente línea en tu build.gradle raíz.
1. Si tu proyecto no está utilizando la declaración de repositorio centralizado, entonces en el archivo build.gradle a nivel de proyecto, añade las siguientes líneas. De lo contrario, puedes saltar a la segunda sección.
// Project level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
// ...
// Add this line
classpath "com.google.gms:google-services:4.3.10"
}
}
allprojects {
repositories {
// ...
// Check that you have the following line (if not, add it):
google()
maven {url 'https://jitpack.io' }
}
}
Si tu proyecto utiliza la declaración de repositorio centralizada, añade lo siguiente a tu archivo settings.gradle.
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
//add this line
maven { url 'https://jitpack.io' }
}
2. En el archivo build.gradle a nivel de aplicación, añade lo siguiente:
plugins {
id 'com.android.application'
// Add this line
id 'com.google.gms.google-services'
}
dependencies {
// ...
// Add the following lines
implementation 'com.github.awesomemotive:pushengage-android-sdk:0.0.5'
implementation platform('com.google.firebase:firebase-bom:26.1.1')
}
Inicialización del SDK
Añade el bloque de código de inicialización del SDK de PushEngage al método onCreate en la clase Application. PUSHENGAGE_APP_ID debe ser reemplazado por el ID de la aplicación que obtuviste del panel de PushEngage.
Nota: Si tu aplicación móvil no tiene una clase personalizada que extienda la clase Application para PushEngage, necesitas crear una clase que extienda la clase Application.
Aquí tienes un ejemplo en Java
public class PEApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// PushEngage SDK Initialization code
PushEngage pushEngage = new PushEngage.Builder()
.addContext(getApplicationContext())
.setAppId("PUSHENGAGE_APP_ID")
.build();
// The small icon is displayed on the top status bar and in the notification.
// By default PushEngage displays a bell icon, however It is recommended to
// customize this so users easily recognize notifications from your app.
PushEngage.setSmallIconResource("your_icon_name");
}
}
Aquí tienes un ejemplo en Kotlin
class PEApplication : Application() {
override fun onCreate() {
super.onCreate()
// PushEngage SDK Initialization code
val pushEngage = PushEngage.Builder()
.addContext(applicationContext)
.setAppId("PUSHENGAGE_APP_ID")
.build()
// The small icon is displayed on the top status bar and in the notification.
// By default PushEngage displays a bell icon, however It is recommended to
// customize this so users easily recognize notifications from your app.
PushEngage.setSmallIconResource("your_icon_name");
}
}
Para registrar el nombre de tu clase personalizada, que extiende la clase Application, navega al archivo Manifest.xml de tu aplicación. Busca la línea que dice “android:name=.”PEApplication”,” y reemplaza “PEApplication” con el nombre de tu clase personalizada. Así es como se vería –
Una vez que hayas configurado todos los pasos anteriores, puedes enviar notificaciones push a tu aplicación Android. Compila y ejecuta la aplicación en un dispositivo físico y envía notificaciones push de prueba desde el panel de PushEngage.
Gestión del permiso de notificación para Android 13 y versiones posteriores
Android 13 requiere permiso para algunos dispositivos antes de enviarles notificaciones. Por lo tanto, si deseas configurarlo, añádelo. Aquí tienes el código que se necesitaría.
Utiliza el método SDK incorporado para solicitar el permiso de notificación.
/**
* Request notification permission using the PushEngage SDK
* SDK automatically calls subscribe when permission is granted
*/
private void requestNotificationPermissionUsingSDK() {
PushEngage.requestNotificationPermission(this, new PushEngagePermissionCallback() {
@Override
public void onPermissionResult(boolean granted, Error error) {
if (granted) {
// Permission granted - SDK automatically calls subscribe
Log.d("MainActivity", "Notification permission granted");
Toast.makeText(MainActivity.this, "Permission granted and subscribed!", Toast.LENGTH_SHORT).show();
} else {
// Permission denied, handle accordingly
Log.d("MainActivity", "Notification permission denied");
Toast.makeText(MainActivity.this, "Permission denied!", Toast.LENGTH_SHORT).show();
if (error != null) {
Log.e("MainActivity", "Permission error: " + error.getMessage());
}
}
}
});
}
Comprobar estado del permiso
También puedes comprobar el estado actual del permiso de notificación:
String permissionStatus = PushEngage.getNotificationPermissionStatus();
switch (permissionStatus) {
case "granted":
Log.d("Permission", "Notifications are allowed");
break;
case "denied":
Log.d("Permission", "Notifications are denied");
break;
default:
Log.d("Permission", "Unknown permission status");
break;
}
Si deseas explorar más las capacidades del SDK de Android, puedes consultar nuestra documentación detallada de la API .
Si encuentras algún problema, por favor contáctanos haciendo clic aquí. Nuestro equipo de soporte podrá ayudarte.