¿Hay alguna forma de convertir o declarar en la actividad principal de una aplicación sin tener acceso al código fuente o usando smali? Me gustaría tener una aplicación como un widget a pantalla completa en el lanzador de novas.
Respuesta
¿Demasiados anuncios?No, no puedes convertir una actividad en un widget desde fuera de la aplicación. Funcionan de maneras completamente diferentes. Con una actividad, el proceso de la aplicación se ejecuta y controla todos los controles de la interfaz gráfica de la actividad. En el caso de un widget, la aplicación envía una descripción del diseño del widget (incluyendo todas las imágenes) al lanzador, y luego el proceso del lanzador se encarga de dibujar ese diseño en la pantalla. La aplicación no se ejecuta todo el tiempo: sólo se ejecuta cuando quiere actualizar la disposición del widget (por ejemplo, para cambiar el recuento de "nuevos correos" después de recibir una notificación de empuje) o cuando se interactúa con el widget.
Funciona de esta manera porque mantener un proceso en marcha para cada widget utilizaría mucha memoria y batería.
Con los nuevos cambios de multi-ventana en Nougat, sería posible que un lanzador incrustara la actividad de una aplicación como si fuera un widget, pero el lanzador tendría que estar escrito para soportar esto, la aplicación tendría que soportar multi-ventana, y seguiría usando mucha memoria y batería, y la inusual configuración bien podría desencadenar algunos errores latentes en las aplicaciones.
0 votos
Interesante pregunta, no estoy familiarizado con nova, pero lo dudo, porque hay que configurar muchas cosas. Muchas de tus aplicaciones acabarían colapsando.