Un tutorial sobre cómo mostrar un interruptor para habilitar el modo imagen en imagen por aplicación en Android O, usando Tasker y SecureTask.
En nuestro último artículo, fuimos los primeros en mostrarle cómo puede utilizar El nuevo modo imagen en imagen (PiP) de Android O ahora mismo en tu teléfono inteligente. En resumen, el método implica enviar una determinada clave conocida como KEYCODE_WINDOW que está definida por la constante 171. Este código clave se envía más fácilmente habilitando el personalizador de barra de navegación oculta en SystemUI Tuner y luego agrega un nuevo elemento de la barra de navegación que activa el código clave.
Sin embargo, realizar este método significa que tendrá un ícono permanente en su barra de navegación para alternar el modo de imagen en imagen, incluso cuando no sea aplicable. PiP solo funciona en ciertas aplicaciones, es decir, aplicaciones que pueden mostrar contenido de video en pantalla completa, por lo que no tiene sentido que haya un botón para alternarlo en todas las aplicaciones. Al final del artículo, dijimos que le mostraríamos cómo mostrar el modo imagen en imagen por aplicación. Así es como se hace.
Mostrar alternancia de imagen en imagen por aplicación
Requisitos:
- Tasker ($2.99)
- tarea segura
Tasker es necesario porque es la aplicación de automatización que utilizamos para detectar en qué aplicación estamos. y enviar comandos a través del complemento SecureTask, que es el que se encargará de cambiar nuestra navegación bar. Una vez que haya instalado ambas aplicaciones, debemos configurarlas.
Para que Tasker detecte en qué aplicación estamos, debemos otorgarle su Servicio de Accesibilidad. Hacerlo es muy rápido, simplemente vaya a Configuración --> Accesibilidad y busque "Tasker" en la lista de Servicios. Habilite el servicio de accesibilidad.
A continuación, debemos otorgarle a SecureTask la capacidad de modificar la configuración del sistema en nuestro dispositivo. Para hacerlo, debemos otorgarle a SecureTask un permiso especial conocido como WRITE_SECURE_SETTINGS que es normalmente inaccesible para aplicaciones normales, pero un usuario puede otorgarlo manualmente mediante el uso de ADB. Por lo tanto, necesitará tener ADB funcionando en su máquina para que esto funcione. Afortunadamente, otorgar este permiso es algo que se hace una sola vez y usaremos SecureTask en futuros tutoriales relacionados con Android O, por lo que definitivamente te recomiendo que lo hagas ahora. Si ha seguido mis tutoriales anteriores en los que le dije que instalara AutoTools, SecureTask tiene menos funciones pero tiene las suficientes para nuestras necesidades aquí.
Configurando el BAD
Lo primero que deberá hacer es descargar el binario ADB para su sistema operativo en particular. Puedes hacerlo aquí. Una vez que los haya descargado, deberá asegurarse de tener la conductor adecuado si estás en Windows.
Una vez que haya extraído el binario en una carpeta separada y haya instalado el controlador, a continuación debemos habilitar la depuración USB en el teléfono inteligente. Para hacerlo, abra Configuración y vaya a Acerca del teléfono. Toque Número de compilación 7 veces hasta que aparezca un cuadro de diálogo que le indica que ha desbloqueado las Opciones de desarrollador. Puede acceder a las Opciones de desarrollador en Configuración ahora. Aparentemente, en Android O, debes ingresar tu pin/contraseña antes de poder abrir Opciones de desarrollador. Hágalo y busque Depuración USB, luego habilítelo.
Ahora conecte su teléfono y abra un símbolo del sistema en el mismo directorio donde extrajo el binario ADB. (Usuarios de Windows, mantenga presionada la tecla Mayús + clic derecho en esa carpeta y seleccione "abrir símbolo del sistema aquí"). adb devices
en el símbolo del sistema. Verá un mensaje que indica que el servidor ADB se está iniciando, luego en su teléfono verá un mensaje que le pedirá que le otorgue acceso ADB a su computadora. Acéptalo. Ahora cuando entras adb devices
en el símbolo del sistema, debería ver el número de serie de su dispositivo; si es así, tuvo éxito.
Otorgar WRITE_SECURE_SETTINGS a SecureTask
Con un símbolo del sistema ADB abierto, ingrese el siguiente comando para otorgar a SecureTask el permiso necesario.
adbshellpmgrantcom.balda.securetaskandroid.permission.WRITE_SECURE_SETTINGS
¡SecureTask ahora tendrá la capacidad de modificar la configuración del sistema sin acceso de root! Ahora estamos listos para pasar a Tasker.
Configurar el perfil de tasker
Abre Tasker y crea un nuevo perfil. Nómbrelo "Alternar imagen en imagen". Selecciona el Solicitud Context y busque la aplicación de video en la que desea habilitar la tecla de la barra de navegación (p. ej. YouTube). Seleccione las aplicaciones que desee y luego retroceda para crear una tarea.
Tasker le pedirá que adjunte una tarea a este nuevo perfil. Cree una nueva tarea cuando se le solicite y asígnele un nombre (o no). Cuando estés en la pantalla de creación de tareas, agrega una nueva acción yendo a Complemento --> SecureTask --> Configuración segura. Presione el ícono de lápiz para abrir la configuración de SecureTask.
En Acción, seleccione Escribir. En Configuración, coloque secure sysui_nav_bar_right
. Debajo del valor, ponga key(171:com.android.systemui/2131230944)
. Salga al menú principal de Tasker. Agregue una tarea de salida a este perfil manteniendo presionada la nueva tarea que acabamos de crear y luego seleccionando "agregar tarea de salida". Repita la acción anterior, pero esta vez para el valor ponga nulo.
¡Eso es todo! Cuando ingresa a la aplicación de YouTube (o cualquier otra aplicación que elija), ahora verá aparecer un ícono emergente en el lado derecho de la barra de navegación que le permitirá alternar el modo de imagen en imagen.
Descargar e importar
Como ocurre con todos los tutoriales relacionados con Tasker, le proporcionaremos el archivo XML que puede descargar e importar. Descargue el archivo .prf.xml de AndroidFileHost a continuación y guárdelo en su almacenamiento interno. Abra Tasker y mantenga presionada la pestaña Perfiles en la parte superior hasta que vea un botón Importar. Toque eso y busque el archivo XML que acaba de guardar, luego selecciónelo para importarlo. Asegúrate de tener habilitado el Servicio de Accesibilidad de Tasker y haber otorgado WRITE_SECURE_SETTINGS permiso para SecureTask como se menciona en mi artículo; de lo contrario, este perfil no hará nada en su ¡teléfono!
Descargue el perfil "Alternar imagen en imagen" desde AndroidFileHost
Si se pregunta qué más podemos lograr con SecureTask y Android O, permanezca atento al Portal XDA porque tenemos mucho para compartir. ¡Espere más tutoriales sobre cómo puede hacer que su barra de navegación en Android O cumpla muchas funciones útiles!