Ya está disponible un zip flasheable que lleva Xposed Framework a las ROM de Android 7.1 Nougat. ¡El zip funciona en el OnePlus 3T y en muchos otros teléfonos!
Después de meses y meses de espera, finalmente tenemos soporte de Xposed Framework para las ROM de Nougat (aunque de manera no oficial). Gracias a algunos desarrolladores talentosos de nuestros propios foros XDA, ahora puede instalar Xposed Framework en una ROM de Android Nougat a través de un zip flasheable.
Hasta ahora, el futuro de Xposed en Nougat parecía un poco inestable. Rovo89, el desarrollador detrás de Xposed Framework, proporcionó una actualización sobre la compatibilidad con Android Nougat hace poco más de una semana. Básicamente, Rovo89 declaró que todavía quedaba mucho trabajo por hacer para que Xposed funcionara correctamente en Nougat, y que tendríamos que ser pacientes.
Afortunadamente, parece que hemos obtenido una solución temporal para aquellos de nosotros que hemos estado esperando ansiosamente una medida provisional. El equipo de PurifyOS tomó el módulo ART que el desarrollador
Actualmente hay tres versiones disponibles para diferentes plataformas, incluido Xposed SDK25 ARM64, Xpuesto SDK25 BRAZOy Xposed SDK25 X86. El equipo de PurifyOS ha probado esta nueva versión de Xposed con un OnePlus 3T con OxygenOS basado en Android 7.1, pero debería funcionar en otros teléfonos con Android Nougat y los usuarios ya informan que han podido instalarlo con éxito en diferentes ROM y dispositivos. Por ejemplo, algunos usuarios de OnePlus 5 han informado que funciona (no es de extrañar, dado que se ejecuta en OnePlus 3T muy bien), pero un usuario que ejecuta una ROM basada en AOSP para el Samsung Galaxy S6 también informó que funcionó para ellos.
Habrá peculiaridades que resolver y no todos han logrado que funcione hasta ahora, y algunos usuarios experimentan cierres forzados y otras rarezas. Sin embargo, incluso siendo este el caso, aún puedes intentarlo si has estado esperando la llegada de Xposed a Nougat desde que se lanzó la versión anterior del sistema operativo Android. No todos los módulos existentes de Xposed Framework funcionarán desde el principio, pero se informa que algunos realmente populares, como Amplify, sí funcionan.
Asegúrese de realizar copias de seguridad periódicas y leer el hilo detenidamente antes de aventurarse si no está seguro de si su dispositivo o ROM es compatible. Finalmente, asegúrese de utilizar la función "buscar" antes de dejar una pregunta duplicada. Puede que Android O esté a la vuelta de la esquina, pero como dice el refrán, "mejor tarde que nunca." Además, muchos usuarios no verán Android O en sus dispositivos durante bastante tiempo, por lo que Xposed debería ser un buen regalo para que no te sientas abandonado.
Actualización: respuesta de Rovo89
El original desarrollado detrás de Xposed Framework, XDA Senior Recognized Developer rovo89, ha estado respondiendo en Github con sus pensamientos sobre estos desarrollos recientes.
Según mi experiencia, puedo decirles que, de hecho, no es tan difícil hacer lo básico, pero lleva mucho tiempo dedicarse a los detalles. Es como la regla 80-20, excepto que se parece más o menos a 95-5.
El enfoque de enlace que he diseñado para las versiones anteriores es bastante estable y también se puede aplicar a las versiones más recientes. Supongo que necesitabas la mayor parte del tiempo para comprobar todos los lugares donde
IsProxyMethod()
yIsDirect()
se llama y decide si deben considerar el nuevo modificador de método o no (es decir, usar el parámetrotrue
O no). Si no lo hizo, es posible que se haya perdido algunos lugares donde recientemente introdujeron este tipo de llamadas. Lo mismo para métodos comoInstallStubsForMethod()
, que necesita operar en el método original incluso cuando se llama para un método enlazado. Deberías buscar más lugares donde esto pueda ser relevante. Eso todavía está dentro del rango de días, pero si no lo hace, es posible que vea fallas oscuras o mal comportamiento que son muy difíciles de depurar.Además de eso, adoptó un enfoque en el que los ganchos solo funcionarían correctamente para ROM que están completamente compiladas desde cero. En las ROM estándar e incluso en la mayoría de las ROM personalizadas (que no incluyeron su puerto durante la compilación), así como para cualquier aplicación que el dispositivo haya compilado antes. Por lo tanto, tendrías que empezar de nuevo con un dispositivo borrado que ejecuta una ROM especial. De lo contrario, las optimizaciones (por ejemplo, la inserción) podrían impedir que se llame a un método y, por lo tanto, los enlaces no funcionarían. Lo peor de esto es que el comportamiento exacto dependería de la ROM, o incluso de cómo el usuario use el dispositivo (ahora que las aplicaciones se compilan en base a perfiles). Los módulos fallarían aleatoriamente y los desarrolladores del módulo se preguntarían qué hicieron mal (respuesta: nada). Si no se cumplen todos los requisitos previos, es una API bastante poco confiable. Imagine que Google publicó una actualización donde
OnClickListener
A veces no se llamaba a un botón, a menos que compilaras tu ROM desde cero... Para mí personalmente, esta es una gran limitación.
Él continúa:
No tiene ningún sentido publicar archivos ZIP flasheables con esto, ya que el port sólo está pensado para recompilar una ROM desde cero..
Y como temía, No hay una sola advertencia de que se trata de un puerto incompleto que a menudo no cumplirá con el contrato API.. 😠 Eso es malo para los desarrolladores y usuarios, al menos deberían saber que está incompleto para poder decidir si quieren admitirlo o usarlo. Nunca me atrevería a hacer algo así sin una gran advertencia. En realidad, como soy bastante perfeccionista, no publicaría ninguna versión incompleta, la fiabilidad es muy importante para mí.
Acabo de revisar mi registro de Git y tenía el enlace básico (como en este puerto) listo en octubre. Desde entonces, he trabajado para eliminar las limitaciones. Para hacerlo más confiable en ROM precompiladas, también podría haber portado la parte de recompilación, sin embargo, eso todavía no es lo ideal. Como se explicó anteriormente, ahora tenemos JIT, lo que nos permite mantener todas las optimizaciones, invalidando solo (y posiblemente recompilando) los métodos que se ven directamente afectados por el enganche. Esto es bastante desafiante, ya que es más que simplemente copiar y pegar. Y hasta que esto no esté hecho, no publicaré nada. 9 meses para eso (hasta ahora) es realmente mucho tiempo, lo sé, pero bueno, es mi tiempo libre y p.e. debido a mudarse a En un apartamento nuevo, no pude trabajar en Xposed durante varios meses (!) y, de lo contrario, solo tenía un tiempo muy limitado.
Debemos dejar claro que estos acontecimientos recientes no son el verdadero "Xposed" que todos ustedes conocen y Me encanta, pero funcionalmente te permiten usar algunos módulos de Xposed Framework ahora mismo en Android. Turrón. No te culparemos por no esperar a la versión oficial, más estable y más compatible de Xposed Framework para Android Nougat, pero queremos dejar claro que esta iteración es simplemente una medida provisional destinada a satisfacer las necesidades de algunos usuarios. ahora. Probablemente no sea la forma en que se manejará Xposed en el futuro.
Descargue Xposed Framework no oficial para Nougat en los foros de XDA