大西ブログ

All your blog are belong to us

iOS版 Google Chrome と はてなブックマーク for iPhone を連携する

iOS版 Google Chrome 、PCとの同期とか便利ですけど、ブックマークレットが使えないため、はてなブックマークと連携して使うのが難しくて残念…
と思っていたのですが、工夫すると連携できなくもないとわかったのでシェアします。

まず、Chrome に以下のブックマークレットを登録します。この時、誤爆しづらい、わかりやすい名前を入れておくのがポイントです(僕は"bbb"としてみました)。

javascript:(function(){location.href='hatenabookmark:/entry?url='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title)+'&backurl='+encodeURIComponent(location.href.replace(/^http/,'googlechrome'))+'&backtitle=Chrome'})()

ブックマークレットは直接起動させられないのですが、アドレスバーにブックマーク名を入力すると下の画面のようにサジェストされ、タップすることでJSを実行できます。

Chromegooglechrome:// と googlechromes:// というURLスキームを利用しています。はてなブックマーク for iPhone には外部連携APIがありますので、Chromeに合わせて以下のように設定しておくと(冒頭に掲載したブックマークレットはこのようになっています)、はてブアプリからChromeに戻ることも可能です。

backurl encodeURIComponent(location.href.replace(/^http/,'googlechrome'))
backtitle Chrome

はてなブックマーク外部連携APIについて詳しくはこちらをご覧ください。backurlのURLスキームを変えることで Chrome 以外でもいろいろなアプリと連携できます。
iPhone向けAPI - はてなブックマーク外部連携API - Hatena Developer Center

欠点としては、Safari は同一URLは新しいタブを作らないのですが、Chrome は新しいタブを作るため、Chromeはてブアプリを行ったり来たりするとタブがどんどん増える事です。まあそこまで頻繁に行き来するものでもないし、これは諦めましょう。

ついでに、Safari の方にも Chromeで開く、というブックマークレットを登録しておくとよさそうです。これで Chrome 中心生活になれますね。

javascript:(function(){location.href=location.href.replace(/^http/,'googlechrome')})();

ぱっと見面倒と思われるかもしれませんが、ChromeはブックマークがUI的に遠いのでアドレスバーを利用するのも意外と便利です。どうぞご利用ください。