Este es el código fuente de la herramienta de modificación Xiaomi XiaomiTool V2 (www.xiaomitool.com)
Actualmente el proyecto se encuentra semiabandonado por diversos motivos. Si desea corregir errores o hacer cosas, simplemente bifurque el repositorio. Este proyecto comenzó como un proyecto a nivel de estudiantes: se han utilizado muchas malas prácticas y se han tomado malas decisiones, lo que hace que este proyecto sea costoso de mantener. Por ejemplo:
Incluso si algunos de estos puntos pudieran solucionarse con bastante facilidad, el proyecto base aún no es lo suficientemente bueno como para que valga la pena para mí. El cambio requerido es tan radical que sería casi tan costoso como reescribir todo desde cero.
Este proyecto usa gradle, por lo tanto, puedes simplemente clonar el repositorio y usar:
gradlew build
y gradlew run
La compilación creará solo el archivo jar, lo cual no es suficiente para que XiaoMiTool funcione: también deberá empaquetarlo con los recursos necesarios (el directorio res
en el repositorio). Asegúrese de seleccionar la rama del repositorio correspondiente al sistema operativo de su plataforma de destino (Windows, Mac, Linux), ya que los archivos de recursos son diferentes.
El directorio relativo res/tools
debe contener las herramientas adecuadas ( adb
, fastboot
para cada plataforma, también archivos relacionados con controladores para Windows) para el sistema operativo de destino. Puedes obtener las herramientas de las diferentes ramas de este repositorio (Windows, Linux, Mac). Tenga en cuenta que adb
y fastboot
NO son genéricos que puede descargar de Internet, sino personalizados compilados específicamente para MIUI. Si no utilizas los de este repositorio, perderás la posibilidad de desbloquear el gestor de arranque y flashear las roms MIUI mediante recuperación de stock.
Para el repositorio de Windows, también es recomendable mantener el directorio res/driver
, ya que contiene el controlador que XiaoMiTool instalará en Windows para poder conectarse a los dispositivos. Además, es recomendable iniciar el programa con privilegios administrativos (puedes usar el lanzador launch4j para hacerlo) para poder instalar los controladores.
La versión de Java utilizada para esta configuración de Gradle es Java 11, sin embargo, el código fuente es compatible con Java 1.8, lo que permite compilar una versión para jre 1.8 de 32 bits.
XiaoMiTool V2 usa JavaFX para la interfaz gráfica de usuario, por lo tanto, si desea crear un paquete, debe crear una imagen JRE con el módulo JavaFX. Puede obtener más detalles sobre cómo hacerlo en la guía oficial de JavaFX. Si compila el proyecto para JRE 1.8, JavaFX ya está incluido en el JRE estándar.
Si desea modificar el código y crear un paquete distribuible, la forma más sencilla probablemente sea tomar una versión anterior del paquete, extraer los archivos, reemplazar el archivo jar y volver a empaquetarlo.
Como se indica en la sección State of the project
, este proyecto se encuentra semiabandonado. No les dediques demasiado tiempo, es posible que simplemente los ignoren.