Hirox Lab

ネット会社開発マネージャーのブログ。開発、ビジネス、マネジメント、たまにシンガポールの情報など。

Amazon 1-Click を一時的に無効化して誤クリックを防止する拡張を公開しました(Firefox, Chrome)

Amazon 1-Click を一時的に無効化して誤クリックを防止する拡張の Firefox Add-on版を公開しました。

addons.mozilla.org

以前ご紹介したChrome拡張版は以下です

chrome.google.com

f:id:hiroxlab:20160911141458p:plain

Chrome版公開のときの記事は以下

hiroxlab.hatenablog.com

以下、おまけで開発メモなど。

Chrome拡張をFirefox Ad-onに再利用

2015年末から、Google Chrome・Opera向けに書かれたWebExtensionはそのままか、小規模な変更だけでFirefox・Microsoft Edgeでも動作するようになりました。偉い!

developer.mozilla.org

「小規模な変更」とは具体的にはブラウザによって若干異なるWebExtension APIのサポート状況の違いの調整です。今回はChrome拡張で使っていた sync storage がFireFoxではサポートされていなかったため local storage に変更しましたが、あとはそのままFirefoxでも動きました。こうしたプラットフォーム間の互換性の確保は実際にはかなり杜撰な事が少なくありませんが、、、これは本当に簡単でした。改めて偉い!

なおChromeとFirefoxの詳細なWebExtension APIの違いは以下で確認できます。

developer.mozilla.org

デベロッパー登録とアドオンの公開申請

ということで早速、以下の説明に従いChrome拡張の公開のときと同じくデベロッパー登録をしてアドオンの公開申請をしました。
developer.mozilla.org

Chrome拡張の公開の時との大きな違いは以下2点です。

  • デベロッパー登録料なし(※ Chrome拡張は有料、この記事の時点で US$5)
  • 公開までには人手によるコード審査とテストをパスする必要あり

アドオン公開申請1度目: 2日後にリジェクト 

2016/09/13に1度目の公開申請をしましたが、その2日後にリジェクトされてしまいました。まだ承認待ち件数80超で突然リジェクトされたので、順番に関係なく明らかにリジェクトのものはすぐリジェクトしたりするようです。

リジェクトの理由は、Google Analyticsのスクリプトを内部で使っていることでした。使うならiframeで使ってくれと。

We do not allow the Google Analytics script to be included in the extension, you need to use a content iframe to include GA.
Further information: https://blog.mozilla.org/addons/2016/05/31/using-google-analytics-in-extensions/

更に「カスタマイズされたjQueryを使わないように」という指摘がありました。Bowerで取り込んだjQueryを使っていただけなのですが、何か誤解されたようです。これは残念でしたが、取り敢えずBowerによる管理は諦め、直接DLしてきたjQueryを読むように直しました。

アドオン公開申請2度目: 10日後に審査通過!

2016/09/16再度申請をして、2016/09/26にようやく承認されました。奇しくも私の誕生日でした!ちなみに奥様は帰国中で、久しぶりの一人きりの誕生日でした!

申請時の承認待ち件数は100件程度でしたが、週に2, 3度まとめて数十件減るだけでなかなか進みませんでした。。

なお審査対象者から「map fileは一応入っていたが、レビューの妨げになるので今後はソースをminifyしないように」というコメントが入っていました。実際エクステンションでminifyする理由はほぼありませんしね。Gulp/Gruntを使っているととりあえずuglifyしてしまうだけの話で。

まとめ

ということでだいぶ待たされはしましたが、大した手間もかけずFirefox Ad-onも公開できました!既にChrome拡張を公開している方は是非試してみて頂ければ。