Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Cómo mostrar un cuadro de diálogo de un servicio

He leído realmente un montón de mensajes sobre este tema, sin embargo nada funciona para mí (o no tiene el efecto que deseo).

Tengo una aplicación, que después de iniciar sesión inicia un servicio de fondo (implementación de la clase de servicio). Este servicio se sincroniza con un servidor y si llega un nuevo pedido, crea una notificación.

  • ¿Cómo crear correctamente un Tablayout ahora que la Tabactivity está obsoleta?
  • El fallo de conexión de Retrofit devuelve RetrofitError.response como null
  • El gráfico de 9 parches de Android no se escala en la vista de imagen
  • Ejecutar pruebas de automatización de la interfaz de usuario con gradle sin desinstalar
  • El emulador de Android se basa en QEMU. ¿Puedo usar KVM con él?
  • ¿Cuál es la diferencia entre un animador y una animación?
  • Hasta ahora todo funciona bien, tengo la notificación y el mensaje Toast. Sin embargo, me gustaría tener un diálogo, que notifique al usuario sobre el nuevo pedido.

    Como he entendido, puede iniciar una actividad desde dentro del servicio, que muestra el diálogo. Esto funciona, pero la actividad se inicia en la parte superior de la pila de actividad actual y muestra el cuadro de diálogo. Tengo una actividad sin vista adjunta y muestra correctamente el diálogo, sin embargo, en un fondo negro.

    Lo que quiero es mostrar el diálogo sobre la actividad actual, haciendo que el fondo real (la actividad en ejecución) se desvanezca y muestre el diálogo.

    ¿Es esto de alguna manera posible?

    Gracias, Filip

  • Cómo cambiar la actividad de inicio en android?
  • Fragmento de Android (con el paquete de compatibilidad en 2.3.3) crea "El niño especificado ya tiene un error de padre"
  • ¿Cuál es el propósito de un patrón de delegación?
  • Error de aplicación: esta versión de la aplicación no está configurada para Facturación de mercado
  • ¿Cómo navegar a la actividad de almacenamiento masivo USB de Android?
  • Android: Usar html5 para determinar la geolocalización en webview con javascript api
  • 5 Solutions collect form web for “Cómo mostrar un cuadro de diálogo de un servicio”

    Recomiendo altamente, altamente, que usted no hace esto (va contra el diseño de Androide y las pautas de la interfaz de usuario). Las notificaciones son la forma preferida de realizar lo que estás haciendo (lo cual suena como si ya lo hayas logrado).

    Dicho esto, si usted debe hacerlo, yo recomendaría sólo usar una actividad temática Dialog. De esta manera no tiene que iniciar un diálogo independiente. Consulte http://developer.android.com/guide/topics/ui/themes.html#ApplyATheme para saber cómo hacer esto.

    Sólo se puede mostrar el diálogo desde el servicio si se trata de un cuadro de diálogo de alerta del sistema. Por lo tanto, establezca el parámetro de composición de la ventana TYPE_SYSTEM_ALERT en Diálogo como sigue:

     dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); 

    Pero, necesita el permiso SYSTEM_ALERT_WINDOW. Por lo tanto, no olvide añadir esta permissin en el archivo de manifiesto.

     <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/> 

    Puedes empezar aprendiendo cómo crear una actividad que se parece a un diálogo (sin barra de título, fondo transparente, efecto "flotante", etc.) y no, no puedes simplemente iniciar un diálogo sin actividad

    No, no puedes secuestrar actividad que no sea "tuya" y ordenarla que muestre el diálogo. Su enfoque de iniciar su propia actividad es el clásico.

    No se puede mostrar un diálogo. Pero usted puede ir alernative manera inflando su visión modificada para requisitos particulares de modo que usted pueda demostrar un diálogo en la pantalla cuando ciertas condiciones se satisfacen.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.