Saltar al contenido principal
Ciertos dispositivos Android tienen un problema conocido donde no reciben notificaciones push cuando se desliza la aplicación. Más detalles sobre esto aquí. Este problema afecta a todos los proveedores de push, pero afortunadamente OneSignal proporciona una forma de llegar a los usuarios de estos dispositivos para ayudarles a entender cómo habilitar push para tu aplicación si la deslizan. Usando el SDK nativo de Android, puedes verificar fácilmente el deviceModel y deviceManufacturer. Luego, basándote en estos datos, activa el mensaje in-app para pedirle a esos usuarios que habiliten la configuración adecuada en el dispositivo para tu aplicación. Algo de código de ejemplo se ve así:
//Gets the device model
String deviceModel = android.os.Build.MODEL;
//Gets the device manufacturer
String deviceManufacturer = android.os.Build.MANUFACTURER;
HashSet<String> manufWithIssues = new HashSet<>(Arrays.asList("samsung","huawei","xiaomi","oppo","vivo","lenovo","sony","asus"));
if (manufWithIssues.contains(deviceManufacturer.toLowerCase()){
  //Based on the device manufacturer you can trigger the IAM to show
  OneSignal.addTrigger("device_manuf", "issue_manuf");  //"issue_manuf" == deviceManufacturer
}
En este ejemplo, si el fabricante del dispositivo actual coincide con un fabricante en el HashSet con problemas conocidos, se pasará al método addTrigger de OneSignal que puedes usar para activar el mensaje in-app configurado en tu Dashboard de OneSignal.

Elegir activador de mensaje in-app

Un mensaje de ejemplo podría decir: ¡Es posible que tu dispositivo no esté recibiendo nuestras notificaciones! 😱 Por favor verifica que la configuración de tu dispositivo tenga nuestras alertas importantes activadas: Configuración ➝ Administración de dispositivos ➝ Batería ➝ Aplicaciones no monitoreadas ➝ Agregar esta aplicación 👍 Configuración ➝ Aplicaciones ➝ esta aplicación ➝ Configuración de aplicación ➝ Notificaciones ➝ Establecer como Prioridad 👍

Imagen mostrando el editor in-app con vista previa de advertencia in-app al usuario que podría estar recibiendo solo ciertas notificaciones