Ok, lo tengo :)
Lo primero a tener en cuenta es en Honor 6, mi dispositivo anterior, había un solo archivo con el que podía jugar para detener la carga automáticamente
En Moto X play, hay dos archivos distintos : uno para desconectar el cargador y otro para quitar el símbolo de carga (en otras palabras, puede detener la carga y aún mostrar el símbolo de cargador conectado). Hasta que me di cuenta de esto, estaba corriendo en círculos, ya que tomé el símbolo de carga para mostrar que la carga estaba ocurriendo (y suponiendo que estaba tratando con el archivo incorrecto). Mientras experimentaba, cuando noté una caída de carga a pesar de que se mostraba el símbolo de carga, verifiqué con la aplicación Ampere y ¡amaneció la sabiduría!
¿Qué son los archivos?
( Editar: 30 Mar 20 Jackpot! Encontró este impresionante repositorio
de archivos para varios dispositivos por el desarrollador del
Módulo Magisk del Controlador de Carga Avanzado . Es mejor usar ese módulo versátil, pero en caso de que quiera hacer bricolaje, es un gran comienzo).
Puede haber otros archivos, pero los archivos en los que me alojé también son:
Para el ícono de carga: /sys/devices/soc.0/78d9000.usb/power_supply/usb/online
(para deshabilitar el icono, cambie el valor del archivo desde 0 to 1
)
Para cargar: /sys/devices/soc.0/78b5000.i2c/i2c-1/1-001c/power_supply/battery/charging_enabled
(para desactivar el valor de cambio de carga del archivo desde 1 to 0
)
Para automatizar esto, el enfoque fue similar a mi respuesta aquí usando Terminal Emulator y Macrodroid como se explica aquí: ¿Cómo automatizar la línea de comandos cuando se inicia una aplicación específica?
¿Cómo encontré los archivos?
Inelegantemente , y espero que alguien publique una buena manera. Aquí hay una manera que puede funcionar para usted al identificar el archivo y la ruta
Supuestos
Largas horas en la red y algo de codificación en GitHub (que no entiendo en absoluto) me indicaron que mirara i2c
y usb
archivos relacionados con nombres como charger_enabled
o enable_charger
. Esto parece ser cierto para Honor 6, Moto X y algunos dispositivos Nexus. No tengo idea de si depende del chipset o del dispositivo
La verdadera ruta de este archivo está en /sys
. De nuevo, puede variar
Próximos pasos
Realice una búsqueda charger enabled
o enable_charger
búsqueda de comodines con palabras similares en/sys
Cambiar los rw
permisos para permitir cambiar el contenido de 1
a 0
, o viceversa
Conecte su cargador y vea el valor en el archivo, desconecte y repita. Si el valor cambia, se ve como el archivo correcto. Mientras el cargador está conectado, cambie el valor en el archivo y si se detiene la carga, lo ha golpeado (más aún, si la ruta está en el i2c
directorio). Verifique con la aplicación Ampere para confirmar el estado de carga
Mientras lo hace, también puede copiar archivos originales y modificados a un directorio separado en su almacenamiento. Necesario para la automatización
Si el dispositivo es como la mía, donde la carga puede ser detenido, pero la carga icono, muestra, más rutina para identificar ese archivo por palabras claves como online
o connected
o ???
Si tienes suerte, lo anterior debería funcionar para ti
Del mismo modo que la información adicional para la posteridad, los atajos de Terminal Emulator son:
- Para deshabilitar la carga y eliminar el ícono de carga
su –c "cp /storage/emulated/0/moto_charging/disable_charging/charging_enabled /sys/devices/soc.0/78b5000.i2c/i2c-1/1-001c/power_supply/battery/"
;
su -c "cp /storage/emulated/0/moto_charging/no_symbol_charging/online /sys/devices/soc.0/78d9000.usb/power_supply/usb/"
- Para habilitar el cargador y el ícono de carga
su -c "cp /storage/emulated/0/moto_charging/show_charging/online /sys/devices/soc.0/78d9000.usb/power_supply/usb/"
;
su –c "cp /storage/emulated/0/moto_charging/enable_charging/charging_enabled /sys/devices/soc.0/78b5000.i2c/i2c-1/1-001c/power_supply/battery/"
moto_charging
es una carpeta creada en SD interna que tiene copias originales y modificadas (para habilitar y deshabilitar la carga), y estos archivos se copian en el sistema. Por supuesto, requiere root