Event pageを複数回取ろうとしたときの罠はバグでした

ちょっと前に「 Event pageを複数回取ろうとしたときの罠」というエントリをしました。これは、以下のようなコードを実行した時に、Event pageのwindowオブジェクトを最初の1回しか取得できない、っていう現象を報告したものでした。 chrome.runtime.getBackgroundPage(function(backgroundPage) { console.log("1: " + backgroundPage); }); chrome.runtime.get...

自らDoS攻撃を食らった話(onStartupやonInstalledの使い方)

自分が作って公開しているChrome拡張機能をEvent page対応したことは 前のエントリで紹介しました。一般的にはそのエントリの内容で十分であり、Chrome拡張機能の動作自体は問題なかったのですが、思わぬところで落とし穴が一つありました。 それは、Ajax通信によるバックエンドサーバとの通信料の増加、でした。 Image Collector extensionでは、Dropboxなどのクラウドストレージサーバに画像をアップロードする機能を、Chrome拡張機能内ではなく、僕の自...

Event pageを複数回取ろうとしたときの罠

【追記: 2013/02/08】以下の挙動はChromeのバグっぽいので、 バグレポートを提出しています。 Chrome拡張機能を作っていて、最近はまったことをここで紹介したいと思います。それは、「複数回Event pageを取得しようとしたときの挙動」についてです。常駐しないエコタイプのBackground pageである「Event page」ですが、これをポップアップウィンドウなどから取得する際には、以下のように記述します。非同期な感じです。 chrome.runtime.get...

Chrome拡張機能におけるエコ対策(Event pageへの移行方法)

いくつかChrome拡張機能を作ってChromeウェブストアに公開しているのですが、それを最初に公開したときはmanifest.jsonファイルのバージョンがまだ最初の頃でした。現在ではバージョン2が主流であり、そろそろ古いバージョンの拡張機能は撲滅される予定になっています。そのため、開発者はそろそろ急いで新しいバージョンに変更すべく、せっせと移行作業を進めなければなりません。これは何もGoogleの開発者いじめではなく、ちゃんとした理由があります。その理由は、どれも開発者およびユーザへの...

SocialからChromeに担当が変わりました

今までGoogle Developers Expert(=API Expert)のSocial担当として活動をしてきましたが、この度Chrome担当に変更となりました。Google Developer Relations Japan Blogでもそのことが正式に触れられています。 [Google API Expert ミーティング 1 月を開催しました] http://googledevjp.blogspot.jp/2013/02/google-api-expert-1.html 最...

新しいImage Collector extensionは”スライドショーモード”をサポートしています

昨日、 Image Collector extensionの新しいバージョンをリリースしました。そのバージョンは、”スライドショーモード”という名前の新しい機能をサポートしています。きっとその機能は、ネットサーフィンをより楽しくしてくれると思っています。 この拡張機能のボタンをクリックしてポップアップを開いたとき、スライドショーモードを開始するための新しいリンクを見つけることができます。 そのリンクをクリックすると、スライドショーモードが開始されます。今見ていたWebページの画像を...

Google Developers法被(はっぴ)をもらいました!

昨日は毎月やっているGoogle Developers Expert meetingでした。そこでもらったのが「Google Developers法被」。法被と書いて「はっぴ」って読みます。 表はこんな感じ。 そして裏はこんな感じ。 着てみました。似合ってますかねー? これからイベントとかあれば、着ていこうと思います。

Chrome+HTML5 Developers Live Japan #1で話してきました

昨日1月24日の夜に、 Chrome+HTML5 Developers Live Japan #1でChrome extensionの話をしてきました。その時の模様は以下で見れます。7分過ぎくらいから音量が大きくなりますので、それまではVolume MAXでお願いします。 使ったスライドは以下です。 内容としては、ちょっと前に書いた「 僕が考えたChrome拡張機能を作るときのデザインパターン」の内容をベースに、Chrome拡張機能のHello, worldを作るための方法や、拡張機能...

WebKitBlobBuilderがChromeから削除されたっぽい

Chrome拡張機能として提供しているImage Collector extensionの中で、今までWebKitBlobBuilderを使っていました。使ってた箇所は、画像を一気にダウンロードするコマンドが列挙されたスクリプトファイルを作る箇所。以下のようにしてました。 var script = "..."; var blobBuilder = new WebKitBlobBuilder(); blobBuilder.append(script); var link = documen...

oh-my-zshのテーマでwedisagreeを選んだ時のgitステータスのマークの意味

今年はzshを使うぞ!と意気込んで、身近にあるシェル環境を片っ端からzshに強制移行してます。もちろん形から入りたいので、 oh-my-zshをまずはインストール。 かっこいいテーマはないかなぁ、と物色してると、良さそうなのがあるじゃないですか。”wedisagree”というテーマが気に入りました。 このテーマ、プロンプトの右に、現在いるディレクトリのgitの状況がアイコン表示されます。現在のブランチ名とかも出て、かなり素敵。しかし、アイコンの意味がわからない。このままでは「ただキラ...