Safari Webブラウザープラグインの作成と公開

OS Xに切り替えた後、Safariをメインブラウザーとして使用し始めました。 ブラウザーを数年間使用して、問題なく動作しました。 それが真実であるプラグインは、ChromeやFirefoxよりもはるかに小さいため、特定のサイトを異なるブラウザで表示することの利便性は大きく異なります。

私はSafariに慣れており、別のブラウザに切り替えたくないので、届かないプラグインをすべて書くことができると決めました。 さらに、非常にシンプルであることが判明しました。

猫の下には、プラグインを作成し、extensions.apple.comに公開する例があります

準備する


まず、開発するものを選択する必要があります。 Soundcloudの音楽をよく耳にし、サイトの「ジャンプ」コメントが非常にイライラするため、再生時にコメントを自動的にオフにするプラグインを作成することにしました。
どのように見えますか:

含まれるコメント
画像

コメントをオフにする
画像

プラグインを開発するには、Apple devアカウントが必要です。 ここで登録できます
次に、プラグインに署名するための証明書取得する必要があります。 証明書の登録および取得時に問題が発生することはありません。サイトの指示に従ってください。

開発


開発者証明書をインストールしたら、開発を開始できます。 まず、Safari->設定->アドオン->「​​開発メニューを表示」にチェックを入れて、開発者モードを有効にする必要があります

画像

ここで、メニュー項目Development-> Extension Builderを開いてプラグインを構成し、保存します。
jQueryを使用してjsプラグインを作成しました。 サポートされているプログラミング言語と、Safariブラウザーのプラグインの機能について詳しくは、 こちらをご覧ください

画像

スクリプトを保存したフォルダーにplugin.jsファイルを作成すると、プラグインコードが保存されます。
例のための私のコード
function soundcloud() { $(document) .ready(function () { $(".player") .each(function () { $(this) .children() != undefined && $(this) .toggleClass("no-comments"); }) }) }; soundcloud(); 


Extension Builderの[最終スクリプト]セクションで、スクリプトを選択し、[インストール]をクリックします。
プラグインが作成され、Safariにインストールされます。

出版の準備


出版の準備に最も時間がかかった。 やることがたくさんあります:


プラグインのアイコン、説明、およびページを見ると、マニフェストに関しては、プラグインの現在のバージョンを説明するXMLファイルに過ぎないことがすべて明らかだと思います。

そのようなファイルのテンプレート
 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Extension Updates</key> <array> <dict> <key>CFBundleIdentifier</key> <string>com.yourCompany.safari.yourExtensionName</string> <key>Developer Identifier</key> <string>YourCertificateID</string> <key>CFBundleVersion</key> <string>Your current bundle version</string> <key>CFBundleShortVersionString</key> <string>Your current display version</string> <key>URL</key> <string>Your-.safariextz-URL</string> </dict> </array> </dict> </plist> 


私のファイルの例
 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Extension Updates</key> <array> <dict> <key>CFBundleIdentifier</key> <string>com.bukashk0zzz.safari.soundcloudcommenthider</string> <key>Developer Identifier</key> <string>123456ABCD</string> <key>CFBundleVersion</key> <string>1</string> <key>CFBundleShortVersionString</key> <string>1.0</string> <key>URL</key> <string>http://mysimple.name/wd/Soundcloud_Comment_Hider.safariextz</string> </dict> </array> </dict> </plist> 


Safari Developerパラメーターは、AppleのDEVアカウントの番号です。 右上隅のExtension Builderにあります。
また、公開する前に、Webサーバー上のMIMEに.safariextzタイプを追加することを忘れないでください
Apacheの例:
AddTypeアプリケーション/ octet-stream .safariextz

転記


すべてを準備しておけば、作成したものを安全に開いてレビュー用にアップルに送信できます。
プラグインを2回目に公開しましたが、最初はプラグインにアイコンを追加しなかったため機能しませんでした。 Appleが検討中のプラグインは、7日間で1回目と2回目の両方でした。 プラグインが公開されない理由を明確に答えてくれるのが好きでした。何を修正する必要があるかは明らかだからです。

このプラグインは、「Soundcloud Comment Hider」というエンターテイメントセクションで公開されています。

プラグインとその他のソースコードはgithubで入手できます。
プラグインをダウンロードするためのリンク。

Source: https://habr.com/ru/post/J152917/


All Articles