By far, the easiest way to develop MS tweaks is to use Theos
THEOSをインストールするには、上記のリンクを与えられた指示に従ってください、あなたはでプロジェクトを保存し、あなたの微調整のためのテンプレートを生成するために$THEOS/bin/nic.pl
を実行するフォルダに移動します。
生成されたTweak.xmファイルは、コードを置く場所です。プロジェクトをビルドするには、ターミナルのプロジェクトディレクトリに移動し、make
を実行してください。あなたのシステムにdpkg
がある場合は、プロジェクトを簡単にパッケージ化してインストールすることができます。
THEOS_DEVICE_IP = [INSERTDEVICESIPHERE]
次に、プロジェクト、の.debパッケージをビルドしてデバイスにそれを上に転送し、それをインストールするmake package install
を実行します。OpenSSH
はあなたのiDeviceにインストールされ、プロジェクトのメイクファイルに次の行を追加していることを確認します。
実際にTweak.xmファイルに書き込まれるコードは、ここで説明するモバイル基板のタスクを簡略化する言語であるobjective-Cです(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
あなたは、あなたがやりたいものは何でもするためにオーバーライドするのCydiaからclass-dump
をインストールし、お使いのデバイスにsshとclass-dump -H path/to/your/binary -o /path/where/you/want/your/classheaders
を実行するために必要なものをクラスやメソッドを調べるには。次に、結果のヘッダーを調べて、自分が行っていることに関連していると思われる名前を持つクラスとメソッドを見つけ、それらを試してみる必要があります。
幸運を祈る!
ありがとうございました!しかし、どのように「あなたは機能するか」を見つけることができますか?どのように私はそれを変更することができるように、関数の元のコードを得ることができますか? – JonasG
心配はいりません!これは難しいことですが、ソースコードを持っていないので、関数の実装を見ることができないので、多くの推測が必要です。 cydiaから "syslogd/var/log/syslog"パッケージをインストールすると、あなたのコードで '%log'を使うことができ、syslog(/ var/log/syslogにあります)何が起こっているのかをよりよく理解するために、どのような引数が呼び出されたかを記録します。また、cydiaからgdbをインストールし、興味深い方法でブレークポイントを設定して、何が起きているのかを調べることができます。それは難しいです、ちょうど実験を続けてください! – stonesam92
また、syslogへの書き込みが有効になると、他の多くのプロセスも書き込みを行い、かなり速くいっぱいになって少しのスペースしか消費しないので、毎回削除してからロギングを無効にしたいかもしれませんあなたがそれを必要としないときは、[theiphonewiki](http://theiphonewiki.com/wiki/index.php?title=System_Log) – stonesam92