2009-05-10 21 views
0

Safariでページを読み込むたびに、個人的に開発されたJavaScriptコードを実行したいと思っています。 Safariのaddblockのように思える。誰でもこれを行う方法を知っていますか?Safariのアドオンを開発するにはどうすればよいですか?

Safariは拡張可能ではありません。それのためのアドオンのフレームワークはありません。しかし、AppleのWebkitとSafariの開発者は、ユーザーがそれらを「バイナリハック」と呼ぶのをやめさせているが、それでも利用可能な他のアドオンもある。これらのアドオンのいくつかはInputManagerを使用しているようですが、Safariでスクリプトを読み込むために人がどのように使用しているかについては、どこにも記載されていません。私は、後ろにエンジニアが、どのようにアドブロックがそれをするのか見なければならないと思うが、私がする前に、私はここで尋ねると思った。誰でも知っていますか?

答えて

3

入力マネージャは、他のアプリケーションのランタイムに任意のコードを挿入するために一般的に(ab)使用されます。いったんそこにいれば、アプリケーション自体をリバースエンジニアリングして、必要な振る舞いを得る方法を理解する必要があります。通常は、ハッキングしているアプリケーションの部分を置き換えるためのメソッドスウィズリングが必要です。ドキュメント化するAPIはないので文書化されていませんが、個々の部分(一般的な入力マネージャーの作成方法、Objective Cのメソッドの振る舞い、クラスダンプのようなツールの使い方など)一緒に。

あなたはGreasemonkeyのように聞こえていますが、SafariでGreasemonkeyのような動作を可能にするために、そこに少なくとも1,2回のハックがあります。私はそれらのうちの1つがあなたのニーズを最初に満たしているかどうかを見ることを提案します。

+0

私はsimblでサファリプラグインを作りたいと思っています。私はArmchair Guide To Cocoa Reverse Engineeringを読んでいます。しかし、メソッドを実装するとき - (void)load;プラグインを使ってPICやFlash URLと同様にSafari DOMオブジェクトを取得する方法は?どうもありがとうございました ! – jin

関連する問題