WSM Project

WSM_logo_Big

Данный проект является полным аналогом Xposed для прошивок MIUI. Позволяет модифицировать системные (и не только) приложения Android без вмешательства в сами приложения.

Существует процесс, который называется Zygote . Это сердце среды исполнения Android. Каждое приложение запускается именно им, кроме того этот процесс управляет основными системными службами . Этот процесс запускается при загрузке телефона сценарием /init.rc . Процесс запускается с помощью /system/bin/app_process , который загружает необходимые классы и вызывает методы инициализации .

В этом месте в игру вступает Xposed. При установке фреймворка (с помощью менеджера WSM Tools), расширенный app_process копируется в /system/bin, заменяя оригинальный. Расширенный app_process  добавляет дополнительный jar в classpath и вызывает методы оттуда в нужное нам время. Например, сразу после того, как для приложения была создана VM, перед запуском основного метода Zygote. Внутри этого метода мы являемся частью Zygote и можем действовать в его контексте .

Например, мы хотим добавить в прошивку 3-4 way reboot (расширенное меню перезагрузки). Раньше для этого нужно было декомпилировать android.policy.jar, редактировать код, компилировать обратно и пользоваться. Теперь же достаточно зайти в WSM Tools на вкладку Онлайн модулей, найти в списке модуль Reboot Options, скачать, установить, перейти на вкладку Модули и активировать его. Перезагрузить телефон и радоваться появившемуся меню перезагрузки (появляется по нажатию на кнопку питания – Перезагрузка).

Скриншоты

Основа проекта – менеджер WSM tools. Он управляет модулями, позволяет качать модули, устанавливать,  включать/выключать, а также удалять.

  • Для работы приложения требуются ROOT права!
  • Тестировалась только на прошивках MIUI v5!
  • Запустить WSM tools
  • Перейти в управление версиями – кнопка Фреймворк на вкладке Модули
  • Нажать Установить/Обновить
  • После установки перезагрузиться
Важно

Возможные проблемы и их решения

Скрытый текст

API и исходники

Скачать