Разработка мобильных субстратов - PullRequest
9 голосов
/ 18 августа 2011

У меня есть несколько вопросов о разработке мобильных настроек подложки.
Прежде всего, как ты их делаешь?

Вам нужно использовать XCode?

Какие файлы нужны и где вы размещаете свой код?

Как вы подключаетесь к приложению?

Например, если я хочу что-то изменить в приложении Сообщения, как я могу запрограммировать его для подключения к Messages.app?

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

Ответы [ 2 ]

12 голосов
/ 27 августа 2011

На сегодняшний день самый простой способ разработки твиков 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. Затем вам нужно просто просмотреть полученные заголовки, чтобы найти классы и методы, имена которых соответствуют вашим действиям, и поэкспериментировать с ними.

Удачи!

7 голосов
/ 07 июля 2012

Я написал учебник по настройке MobileSubstrate в своем блоге Если вы им воспользуетесь, надеюсь, вы найдете его полезным!

...