GCookpadをChrome拡張の仕様変更に対応し、manifest_version 2にしました

いつもの藤岡さんの所でやってる朝活に参加してきました。参加者2名。

自分の朝活での作業内容はタイトル通りで、Chrome拡張機能に大きな仕様変更が入っていたので、GCookpadにそれの対応をやってました。
どこらへんが変わったのかは下記参照。
http://code.google.com/chrome/extensions/manifestVersion.html
http://blog.chromium.org/2011/07/writing-extensions-more-securely.html
http://blog.chromium.org/2012/02/more-secure-extensions-by-default.html
http://code.google.com/chrome/extensions/trunk/contentSecurityPolicy.html


セキュリティ周りに付随しての変更ということで、なかなか大きな変更ですね。しかも対応しないと、そのうち動かなくなってしまいますし。
結構前にブログなどには情報が挙がっていたようなのですが、私はさっぱりチェックしていなかったので、今回Chrome Web Store teamからメールが来るまで、気づいてませんでした。


manifest_version 2にするために実際に行った内容は下記。
https://github.com/katahirado/GCookpad/commit/412313e43d47644f48ab02434f144f97d7fd3b69
https://github.com/katahirado/GCookpad/commit/1862607224b09d201d530de710edca9db70cc123

  • manifest.jsonでのkey変更などに対応
@@ -1,17 +1,20 @@
 {	
+  "manifest_version": 2,
 	
……..
  	  	
-    "background_page": "background.html",	
+    "background": {
+      "scrips":["background.js"]
+    },
     "browser_action": {
         "default_icon": "cookpad_search_16.png",
         "default_title": "GCookpad",
-        "popup": "popup.html"
+        "default_popup": "popup.html"
     },
 …..
 }
  • Inline JavaScriptが駄目になったので、html部分を全く使用していなかったbackground.htmlをbackground.js単独に変更。
  • popup.htmlのInline部分をpopup.jsにして別ファイルに。
  • tabsのpermissonが不要になったので、manifest.jsonから削除


他、innerHTMLでtagをごにょごにょするのもヨロシクないと書いてあるので、オープンアワーで引き続きそこいらへんの対応を作業予定です。

朝活お疲れ様でした。今日も1日頑張りましょう。