404 motivation not found | t_ishidaのブログ

1月/10

8

OpenSocial (1)

能書き

OpenSocialについて調べる機会があったので頭整理しながら書いてみる。この道の専門家ではないしまだ踏み込むための準備をしている段階なので内容の正誤は保証できません。むしろ、詳しい人とかが読んで突っ込みたいこと有るようならガシガシ突っ込んでください。大歓迎です。
また、そういう事情なのでとっかかりが欲しいというレベルではない本気で勉強したい人は、公式なドキュメントを当たることをオススメします。

OpenSocialって何?

要約するとSNSとかにアプリケーションを作るためのAPIとか土台のこと。mixiアプリとかFacebookアプリ(Facebookは違いますね)とかを作るために使う技術。mixiアプリとかでプロフィールページになんかiGoogleのガジェットっぽいものを載せている人居るでしょ?アレ作るために使う技術です。GoogleがiGoogleのために作った仕組を流用しているのでiGoogleガジェットっぽいのは、つまりはそういうことです。

作り方

実は鬱陶しいことにOpenSocial依存の部分は対象のサイトの上で開発するしか無いです。勿論上手くスタブを作ってローカルで開発する事も出来るかも知れませんが。まだ、効率的な開発方法に触れられるほど僕自身が慣れている訳ではないので、ここでは触れません。あくまでOpenSocialってなんなのさ?っていう話だけで。
前置きが長くなりましたが、以下の手順で開発します。
とりあえずはmixiにしときます。

用意するもの

  • ガラパゴスケータイ
  • PC
  • 公開しているWebサーバー

Warning: 絶対にガラパゴス携帯が必要です。

まず、mixiのユーザーになるためにはガラパゴス携帯が必要でさらにデベロッパー登録の認証でもう一回必要になります。しかも、ガラパゴス携帯ならなんでも使える訳ではなく、ドコモ、AU、Softbankのガラパゴス携帯でなければなりません。emobileを使ってる人や、willcomのPHSを使っている人は、もうこの時点で無理です。そして、SoftbankだったとしてもiPhoneはガラパゴス携帯ではないので無理です。
さらにiPhoneはsoftbank.ne.jpのメールアドレスを使えばバリデーションが通ってしまいますが認証時にGUIDが取れずにワークフローが進まなくなるという形になります。これは誘ってくれた人に申し訳ない事になるので注意しましょう。

対応しているガラパゴス携帯を持っていない人は、もうmixiアプリの開発を諦めるか、mixiユーザーになるためにもう一台携帯を買うしかありません。実は、特定の人にとっては、ここが一番のハードルです。かく言う僕もiPhoneユーザーなので、どハマりしました。かなり頑張って裏道を探しましたが無理っぽいです。ガラパゴス携帯を使う以外の道は見つけられませんでした。
いずれにせよ、他人の褌で相撲を取ろうとしているので、借りた褌のサイズに合わせるしか有りません。
ひょっとしたら、そういった場合はmixi専用のAPIを使わずにgooやFacebook(Facebookは無理ですね)を使って作って知り合いのmixiユーザーに頼んで上げてもらうというのが一番健全かも知れません。

開発の手順

  • mixiのユーザーになります。絶対にmixiのアカウントが必要です。つまり、友達居ないのでmixiアカウントが無い人はmixiアプリを作る資格を得られません
  • ここからデベロッパー登録をします
  • ガラパゴス携帯のメールで認証依頼メールを受け取ってガラパゴス携帯のGUID認証をします
  • アプリケーション登録をします
  • 開発します

最後に開発します。とか言ってるけどアプリケーション登録のところで躓きましたね。誤解を恐れずに言えばガジェットXMLというのは、つまりアプリ本体と言っても良いでしょう。でも、きっと、その解釈だと正解であり誤解です。つまり、ガジェットXMLというのはmixiアプリとして提供するviewを定義する部分だけの話なのでviewだけで完結させられる小さなアプリならば、それだけが本体と言えるかも知れませんが自分のところでもサーバーサイドプログラミングしてデータ受け取って表示したりゴニョゴニョとマッシュアップ(笑)したりするつもりがあるのならば、それだけが本体ではないと言えるでしょう。ともあれ、そのXMLを自分で公開しているWebサーバーにアップロードして、そこまでのURLを登録するというのが、アプリ登録で出てきた項目”ガジェットXML”という項目の意味です。

例えばガジェットXMLというのは以下のようなものです

<?xml version="1.0" encoding="UTF-8"?>
<Module>
  <ModulePrefs title="Hello, mixi">
    <Require feature="opensocial-0.8" />
  </ModulePrefs>
  <Content type="html"><![CDATA[
  <h3>はじめてのmixiアプリ</h3>
  <div>
  <script type="text/javascript">
  for( var i = 0, list = 'はじめてのmixiアプリ'.split(''); i < list.length; i++ ) document.write( list[i] + '<br />' );
  </script>
  </div>
  ]]></Content>
</Module>

という訳で見ての通りHTMLの断片をXMLにCDATAで組み込んだものですね。その通り、このXMLの中でHTMLとJavaScriptを使って動的にガジェットを描画するのがOpenSocialの基礎です。このHTMLの断片の中からOpenSocialのAPIと自分でWebサーバーに用意したAPIをマッシュアップ(笑)させることでアプリを構築していきます。

やる気が尽きたので、今回はここまで。
次は、ガジェットXMLの色々とOpenSocialAPIについて書きます。

Share and Enjoy:
  • Digg
  • del.icio.us
  • Google Bookmarks
  • Tumblr
  • email
  • Facebook
  • FriendFeed

RSS Feed

コメントはまだありません。

Leave a comment!

<< OpenSocial(2)

mixiって >>

Find it!

Theme Design by devolux.org

Tag Cloud