Detección de mensajes de tostadas
No creo que esto sea posible, ya que no he encontrado nada en la documentación del SDK (todavía).
Pero podría hacer con saber si es posible escribir una aplicación que registra mensajes Toast. Registro de la aplicación que mostró y lo que el mensaje mostrado contenido.
- Tostadas personalizadas para Android
- ¿Por qué son los mensajes emergentes de Android llamados brindis?
- Tostas versus cuadros de diálogo: ¿cuál usar cuando?
- Tostada y duración
- Android: Cómo configurar el color del texto de un Toast
Se trata de un esfuerzo totalmente personal para crear una aplicación que pueda detectar los mensajes de brindis. Debido a que algo en mi teléfono está creando un brindis diciendo "Enviar …" aproximadamente una vez al día, y para la vida de mí no puedo rastrear la aplicación ofensiva (clase de servicio). Pensé que podría ser GMail o Evernote, pero hay mensajes de brindis para enviar son ligeramente diferentes. Voy a construir una aplicación porque 1) No sé si LogCat mostraría nada, y 2) No quiero mantener mi personal / dev teléfono conectado a una PC todo el tiempo (como el "Enviar … "ocurre tan infrecuentemente).
- Incompatibilidad de tipo: no se puede convertir void to toast
- Cómo cancelar Toast creado en un método diferente en android?
- ¿Cómo puede obtener la luz azul halo de una tostada en mi tostada personalizado también?
- Android: Notificación personalizada de brindis hereda toast predeterminado
- Tostadas que llegan varias veces
- Tostada no se muestra en el Samsung Galaxy S3 (última actualización 4.1.2)
- Error debido a la combinación no válida de Toast y OnClickListener
- No se puede crear el controlador dentro de hilo que no ha llamado Looper.prepare ()
Es posible capturar Mensajes / Notificaciones con un Servicio de Accesibilidad , eche un vistazo a eso.
Puede extender la clase AccessibilityService
y reemplazar el método onAccessibilityEvent()
para implementar algo como esto:
public void onAccessibilityEvent(AccessibilityEvent event) { if (event.getEventType() != AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED) return; // event is not a notification String sourcePackageName = (String) event.getPackageName(); Parcelable parcelable = event.getParcelableData(); if (parcelable instanceof Notification) { // Statusbar Notification } else { // something else, eg a Toast message String log = "Message: " + event.getText().get(0) + " [Source: " + sourcePackageName + "]"; // write `log` to file... } }
Nota: Esto no funcionó para mí en Android 2.2, ya que no parece que captura Toasts, pero funcionó en Android 4.0 o superior.
- ¿Qué debo usar para un mejor rendimiento, nueve parches o un recurso xml extraíble?
- Gradle Robolectric Resources NotFoundException en pruebas