Estoy seguro de que esto se habría preguntado antes. Pero no pude averiguarlo todavía.
Recientemente actualicé a Lollipop en mi teléfono Sony Xperia Z. La barra de notificaciones y la configuración desplegable son geniales.
Pero en la pantalla de bloqueo, no quiero activar/desactivar WiFi, Bluetooth ni ninguna configuración. La configuración simplemente desplegable no debe permitirse en la pantalla de bloqueo. ¿Cómo puedo hacer eso? ¿Hay alguna opción?
Ya tengo patrón de bloqueo.
Estoy usando CyanogenOS 12 (derivado de CM12), por lo que es posible que la siguiente solución no funcione en un Lollipop estándar, pero de todos modos, es una solución muy útil.
A los mosaicos que puede alternar en la Configuración rápida se les asignan nombres particulares como Bluetooth → bt
, Wi-Fi -> wifi
, Horizontal/Retrato → rotation
y muchos otros, y estos nombres se almacenan como un valor para la clave sysui_qs_tiles
en la tabla secure
de settings.db
(Configuración Almacenamiento).
Si bien esos mosaicos se pueden quitar/reorganizar desde la interfaz de usuario de Configuración, también se puede considerar la línea de comando para lograr la tarea.
El comando relevante es settings
y su uso se menciona como:
usage: settings [--user NUM] get namespace key
settings [--user NUM] put namespace key value
settings [--user NUM] delete namespace key
'namespace' is one of {system, secure, global}, case-insensitive
If '--user NUM' is not given, the operations are performed on the owner user.
Necesitará la configuración de ADB en su máquina antes de continuar. Alternativamente, si el dispositivo está rooteado, puede usar una aplicación de terminal como Terminal Emulator para Android .
Nota: ADB en modo inalámbrico puede resultar peligroso si el dispositivo no admite la autenticación de un cliente antes de dar acceso. ¡Proceda bajo su propio riesgo!
Primero tenemos que averiguar el valor almacenado en la clave sysui_qs_tiles
, y para hacer eso, ingrese en una terminal el comando:
adb shell settings get secure sysui_qs_tiles
Para dispositivos rooteados que usan la aplicación de terminal:
su
settings get secure sysui_qs_tiles
La salida sería como:
wifi,bt,cell,rotation,flashlight,hotspot,location,airplane
Ahora, si quiero eliminar el modo avión de la configuración rápida o quiero que se muestre el mosaico de Wi-Fi después de Hotspot , entonces los comandos en el orden respectivo serían:
adb shell settings put secure sysui_qs_tiles wifi,bt,cell,rotation,flashlight,hotspot,location
adb shell settings put secure sysui_qs_tiles bt,cell,rotation,flashlight,hotspot,wifi,location
Para dispositivos rooteados que usan la aplicación de terminal:
su
settings put secure sysui_qs_tiles wifi,bt,cell,rotation,flashlight,hotspot,location
settings put secure sysui_qs_tiles bt,cell,rotation,flashlight,hotspot,wifi,location
Ahora, volviendo al requisito, es decir, " ocultar configuraciones rápidas en la pantalla de bloqueo ". Puede usar una herramienta de automatización como Tasker para eliminar los mosaicos de la Configuración rápida cuando la pantalla está bloqueada y volver a agregarlos cuando la pantalla está desbloqueada.
Antes de continuar con el uso de Tasker , debo mencionar que el settings
comando solo se puede usar con ADB en dispositivos no rooteados debido a que se requieren privilegios más altos que los que se otorgan a un usuario común y, por lo tanto, para la automatización en Tasker , el dispositivo tendría que tener ADB ejecutándose en modo inalámbrico. Para hacerlo, consulte:
Agregue una acción como Código → Ejecutar Shell y agregue estos detalles:
Comando :adb connect localhost:<PORT>; adb shell settings put secure sysui_qs_tiles wifi,bt,cell,rotation,flashlight,hotspot,location
Para dispositivos rooteados, los detalles serían:
settings put secure sysui_qs_tiles wifi,bt,cell,rotation,flashlight,hotspot,location
Para los casos en que importa:
<PORT>
como el número de puerto en el que se ejecuta ADB inalámbrico como5555
wifi,bt,cell,rotation,flashlight,hotspot,location
usar los nombres de los mosaicos que desea o tiene en Configuración rápidaCree otra tarea llamada "Tiles s-locked".
Nota : si configuró ajustes de modo que la pantalla no se bloquee justo después de que el dispositivo entre en suspensión, sino después de XY segundos (como 30
segundos), cree una acción como Tarea → Esperar y configure esos XY segundos . Alternativamente, sleep XY
se puede usar en el siguiente paso bajo el Comando . Arielle sugirió la idea .
Agregue otra acción como Código → Ejecutar Shell y agregue estos detalles:
Comando :adb connect localhost:<PORT>; adb shell settings put secure sysui_qs_tiles ' '
Para dispositivos rooteados, los detalles serían:
settings put secure sysui_qs_tiles ' '
Highest
Prioridad y vincule la tarea "Mosaicos s-desbloqueado".Highest
Priority y vincule la tarea "Tiles s-locked".Habilite el Tasker y observe la acción deseada bloqueando/desbloqueando la pantalla.
(Haga clic en la imagen para ampliar)
Orden de imágenes como "Sin mosaicos cuando la pantalla está bloqueada" → "Mosaicos cuando la pantalla está desbloqueada"
(Haga clic en la imagen para ampliar)
Quiero saber si mi solución funciona en un dispositivo que ejecuta Stock Lollipop.
settings put secure qs_show_brightness_slider 0
eliminaría el control deslizante de brillo. Cambie 0 a 1 y volvería. Desafortunadamente, mi dispositivo se comporta de manera extraña cuando ejecuto ese comando usando Tasker. ¡El efecto se produce si solo lo pruebo manualmente a través de ADB o terminal, pero no a través de Tasker! Si te funciona, házmelo saber.adb
binario viene con el sistema. Además, no he verificado la hipótesis, pero para conectarse a Android a través de ADB inalámbrico, aún tendría que autenticar la huella digital al menos la primera vez.usb_tether
. // Escuché que Tasker agregó soporte para mosaicos CM.No hay forma de desactivar la configuración rápida en la pantalla de bloqueo.
Sin embargo, puede ser posible flasheando una ROM personalizada en su teléfono. Sé que puedes reorganizar/eliminar mosaicos en CyanogenMod.
Nota: al actualizar una ROM personalizada, sus datos se borrarán y su garantía quedará anulada .
Editar: en XDA-Developers encontré esto:
El menú de configuración rápida se puede editar: cuando el teléfono está desbloqueado, abra el panel de configuración rápida y toque y mantenga presionado cualquiera de sus íconos, podrá eliminar o agregar algunas funcionalidades. Simplemente elimine el modo avión y los datos móviles. De esta manera, cuando el teléfono está bloqueado, nadie puede desactivar su conectividad. El inconveniente es que no puedes cambiar el modo avión fácilmente incluso cuando el teléfono está desbloqueado.
Fuente: http://forum.xda-developers.com/showpost.php?p=60243490&postcount=13
mateo leer
Tomas Vos
elashwanik