sonidos quitar que para pantalla notificaciones notificacion mensajes los las hacer globo desde contestar como bloqueo aparecen android android-intent android-notifications android-notification-bar android-broadcast

android - quitar - notificaciones whatsapp iphone



Escuche los mensajes/notificaciones entrantes de Whatsapp (5)

Estoy trabajando en una aplicación basada en notificaciones, para la cual necesito escuchar las notificaciones entrantes. He podido escuchar llamadas entrantes, SMS, correo, etc. No tengo ni idea de cómo escuchar mensajes o pings de amigos en Whatsapp a través del código. ¿Se puede hacer esto realmente? ¿Si es así, cómo? ¿ Se puede usar el servicio de accesibilidad para esto, usando el nombre del paquete como "com.whatsapp"?


A menos que los Desarrolladores de esa aplicación compartan intencionalmente un servicio, un proveedor de contenido o envíen transmisiones públicas de eventos intencionalmente, o expongan un sistema de registro de difusión personalizado, no existe una forma legítima en que Android escuche el funcionamiento interno de una aplicación de un tercero. El aislamiento de aplicaciones está diseñado en Android por una razón muy importante: seguridad .


Los eventos de accesibilidad solo captan el evento de notificaciones entrantes, no cuando se actualizan. Por ahora, las notificaciones de WhatsApp no ​​muestran el mensaje, solo el remitente. El mensaje luego es agregado por la aplicación WhatsApp con una actualización, que no puede ser capturada por el servicio de accesibilidad.

Solo tendrá algo así como "1 mensaje nuevo de XXX", pero eso puede ser suficiente para sus necesidades.


Vea el ejemplo a continuación para ver las notificaciones de whatsapp:

public class Notifier extends AccessibilityService { @Override public void onCreate(){ //Toast.makeText(this,"Oncreate", Toast.LENGTH_LONG).show(); } @Override protected void onServiceConnected() { // Set the type of events that this service wants to listen to. Others // won''t be passed to this service. Toast.makeText(this,"Service connected", Toast.LENGTH_LONG).show(); AccessibilityServiceInfo info = new AccessibilityServiceInfo(); info.feedbackType = AccessibilityServiceInfo.FEEDBACK_ALL_MASK;; info.eventTypes = AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED ; // If you only want this service to work with specific applications, set their // package names here. Otherwise, when the service is activated, it will listen // to events from all applications. info.packageNames = new String[] {"com.whatsapp"}; info.notificationTimeout = 100; setServiceInfo(info); } @Override public void onAccessibilityEvent(AccessibilityEvent event) { if(event.getEventType() == AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED) { Toast.makeText(this,"Notification Catched", Toast.LENGTH_LONG).show(); } } }

Y no se olvide de configurar el permiso desde la configuración> Accesibilidad para acceder a los eventos del sistema. Permitir permiso desde la configuración.

revisa este enlace

el servicio de accesibilidad no se inició


En realidad, puede analizar las notificaciones entrantes y los mensajes desde Android 4.2. Hice esto: https://github.com/Snirpo/whatsapprelay . Esto se hace con un servicio de accesibilidad. Actualmente analiza mensajes de cierto grupo de WhatsApp. Pero se puede adaptar para analizar todos los mensajes. Enviar mensajes a través de WhatsApp es más difícil desafortunadamente.


Pude hacer esto usando el servicio de accesibilidad . Al usar esto, puedes escuchar todas las notificaciones en la barra de notificaciones. Escuché la especificación de la aplicación al agregar el nombre del paquete a la service info Servicio de Accesibilidad, que en este caso era com.whatsapp . No pude leer los mensajes, pero me avisan cada vez que llega un mensaje.