На сегодняшний день самый простой способ разработки твиков MS - использовать Theos
Следуйте инструкциям, приведенным по ссылке выше, чтобы установить theos, перейдите в папку, в которой вы хотите сохранить проект, и запустите $THEOS/bin/nic.pl
, чтобы сгенерировать шаблон для вашей настройки.
В сгенерированном файле Tweak.xm вы положили свой код. Для создания проекта просто перейдите в каталог проекта в Терминале и запустите make
. Если в вашей системе есть dpkg
, вы можете легко упаковать и установить проект. Убедитесь, что на вашем iDevice установлена OpenSSH
, и добавьте эту строку в make-файл вашего проекта:
THEOS_DEVICE_IP = [INSERTDEVICESIPHERE]
Затем запустите make package install
, чтобы построить свой проект, упаковать его в .deb, перенести на ваше устройство и установить.
Код, который на самом деле содержится в файле Tweak.xm, представляет собой target-C с языком, упрощающим задачи Mobile Substrate, который называется Logos, что объясняется здесь: http://iphonedevwiki.net/index.php/Logos. В целом, код следует этому формату:
%hook classname //declares the class from your application you're going to override
-(void)functionyouwanttooveride {
dosomethingnew(); //put all your new code for the method here
return %orig; //this calls the original definition of the method and returns the result
}
%end //end hooking classname
Чтобы узнать, какие классы и методы вам нужно переопределить, чтобы делать то, что вы хотите сделать, установите class-dump
из cydia, ssh на свое устройство и запустите class-dump -H path/to/your/binary -o /path/where/you/want/your/classheaders
. Затем вам нужно просто просмотреть полученные заголовки, чтобы найти классы и методы, имена которых соответствуют вашим действиям, и поэкспериментировать с ними.
Удачи!