Rovo89: обновленная информация о разработке Xposed для Nougat

Разработчик Xposed Rovo89 предоставил информацию о текущем статусе Xposed для Nougat. Заходите и узнайте, почему обновление занимает так много времени!

Причина, по которой я лично продолжаю использовать Android 6.0 Marshmallow на своем OnePlus 3, несмотря на OnePlus выпускает обновление Nougat для телефона на стабильных каналах, это наличие Xposed. Платформа Xposed и экосистема модулей составляют важнейшую часть работы с Android, которую я предпочитаю. - до такой степени, что я готов отказаться от последнего обновления ОС от OEM-производителя только ради того, чтобы насладиться этой сладостью. фрукты.

Хотя выпуск Xpose for Nougat требует некоторого времени, и некоторые из нас не против подождать дальше, прошло некоторое время с тех пор, как мы в последний раз слышали о ходе проекта.

Старший признанный разработчик XDA rovo89 потребовалось некоторое время, чтобы Сообщи нам о текущей ситуации с проектом Xposed for Nougat:

«Похоже, что все больше и больше людей нервничают по поводу того, будет ли (и когда) Xposed для Nougat или нет, поэтому я почувствовал, что должен что-то сказать.

Почему это занимает так много времени? Потому что с каждым выпуском я стараюсь обеспечить хорошую интеграцию Xpose с улучшениями новой версии ART. Шаг от Lollipop к Marshmallow не был огромным. Это была эволюция, некоторые вещи даже позволили более элегантно интегрировать Xpose. В целом это было в основном осторожное портирование, а не новаторство.

С появлением Nougat что-то фундаментальное изменилось. Если вы уже используете Nougat, вы заметили, что установка теперь происходит намного быстрее. Это связано с тем, что APK-файлы не компилируются немедленно (AOT), а запускаются в (более медленном) режиме интерпретации. Звучит плохо, но они включили JIT, который быстро скомпилирует те методы, которые используются очень часто. Это позволит восстановить известную и постоянно улучшающуюся производительность нативного кода. Кроме того, ART ведет список этих часто используемых методов («профилирование»). Когда устройство простаивает, оно, наконец, выполняет компиляцию AOT, но на основе данных профилирования. После этого вы получите отличную производительность сразу после запуска приложения. JIT все еще ждет, если шаблоны использования изменятся, и я думаю, что он также скорректирует профиль и улучшит компиляцию AOT.

Это приводит к различным состояниям компиляции и большей сложности. Кроме того, в прошлом возникало множество проблем, вызванных необходимостью перекомпиляции Xpose всего ПЗУ и всех приложений: иногда это приводило к зацикливанию загрузки, когда файлы odex были слишком сильно предварительно оптимизированный, он блокировал довольно много места для хранения перекомпилированных файлов, и мне пришлось отключить некоторые оптимизации, такие как встраивание и прямой указатель звонки. Я надеюсь, что смогу использовать JIT-компилятор, чтобы избежать этого в Nougat. Если бы Xpose знал, откуда вызывается метод, он мог бы сделать недействительным скомпилированный код вызывающих сторон, и они могли бы временно использовать интерпретатор. Если они достаточно важны, JIT перекомпилирует их.

Я уже провел много исследований и экспериментов для этого и сейчас пытаюсь это реализовать. Но, как вы понимаете, все это требует больших усилий и легко может занять сотни часов...»

Основной проблемой, как обычно, в проектах любителей, является распределение времени, и мы понимаем, откуда берется rovo89. Даже в нынешнем виде проект Xposed включает в себя месяцы усилий различных разработчиков, направленных на то, чтобы конечный пользователь мог наслаждаться им в такой простой и распространяемой форме.

Как говорится, Рим строился не за день, а кирпичи клались каждый час:

Так что да, я все еще работаю над поддержкой Nougat, когда позволяет мое свободное время, но я понятия не имею, когда это будет сделано. Как только это будет сделано, вы узнаете.

Android не идеален, и Xpose — это то, что позволяет нам исправить то, что не сделал первоначальный разработчик. Ожидание окончательного исправления Android для новейшей ОС продолжается, и мы желаем rovo89 удачи с нашей стороны.

Полный текст заявления вы можете прочитать в сообщение на форуме. Вы тоже ждете Xposed? Дайте нам знать об этом в комментариях!