読者です 読者をやめる 読者になる 読者になる

愛と勇気と缶ビール

ふしぎとぼくらはなにをしたらよいか

モバゲーアプリとかMixiアプリを目指しつつOpenSocial覚書

(余談:俺をTwitterでFollowしてる人は、ここ数日のTimeLineからこのエントリに至るまでの俺の「思考の流れ」もとい「つぶやきの流れ」「ブックマークの流れ」が見えるはず。そこから俺の思考を再構築できる人ならこのエントリは無意味)



Mixiだけでなく、DeNAのモバゲーもOpenSocial対応を発表しましたねえ。

ここしばらくはOpenSocial周りがアツくなってきそうな感じなので、「とにかく軽薄に何にでも飛びつく」ことをモットーとしている当BlogではSinatraの紹介もそこそこに、OpenSocialにも絡みついていこうかと思います。


OpenSocialについて適当な説明をしておくと、「ソーシャルサイトでユーザアプリを作るための公開APIの仕様」です。

あくまで仕様なので、OpenSocialという名のプログラムがあったりするわけではありません。要は、「この関数を使うと友達のリストがこういう形式で返ってくる」というような決まりごとがOpenSocialで、その関数をどう実装するかはOpenSocialの実装者の任意。実装がどうであれユーザ(作り手)は「ともかくこの関数を呼べばこうなる」ということだけは分かっているので、中の人が何をしているかは気にせず、OpenSocial対応のソーシャルサイトで共通に利用可能なソーシャルアプリを作成出来るわけです。(この説明、合ってるんだろうか?)


といっても皆が皆、一からOpenSocialの実装を行うのも面倒なのでApacheShindigという参照実装があったりもします。けっこう多くのサイトで採用されているもよう。

http://incubator.apache.org/shindig/



でまあ、どうやってOpenSocialを利用したアプリを開発するかってことなんですが。

一番手軽なのが、既にOpenSocialに対応しているiGoogle上でゴニョゴニョする方法なんだけども

(参照)http://postal-search-apis-and-solutions.blogspot.com/


この方法だと特に用意なしでOpenSocialを利用したiGoogleガジェットをとりあえず作成できるんだけども、流石にiGoogle上のエディタで本格的なアプリを作ろうという人はいないと思う。


さらに言うと、OpenSocialは「ソーシャルアプリ用API」なので、基本的にはソーシャルサイト上で動くもの。なので、「友達リストを表示する」アプリを仮に作ったとしても

1、あるソーシャルサイトのアカウントを持っている
2、そのソーシャルサイトに十分なデータソースがある(友達がちゃんといる、とか)

という2つの条件が満たされた上で、そのアプリをソーシャルサイトにUPした上で動作確認を行わなければならない。



これは非常にめんどくさい、というか開発効率悪い、のでEclipseプラグインとして提供されているOSDE(OpenSocial Development Environment)を利用するのがいいかと。


Eclipseはプラグインベースの(Javaが有名)IDEで、ここでダウソできる。どれがいいか分からん場合はfor Java Developerが無難。EEでもいい。

http://www.eclipse.org/downloads/


OSDEはここ参考に

http://wiki.opensocial.org/index.php?title=OSDE_Tutorial



OSDEを使うと何がよさそうかというと


Shindig内蔵で、ローカルにテスト用ソーシャルサイトデータベースみたいなものを作成してテストできる
・当然、ソーシャルサイトの「ユーザ」をIDE上から挿入できたりもする
・当然OpenSocialアプリ用開発支援もある
・結論としてはEclipse上でOpenSocialアプリの開発が完結する(実地テストを除く)


てな感じ。



これからOpenSocial対応のアプリを作ろうとしている人の助けになれば幸いです。

(*チュートリアルのJavaScript部分が俺の環境ではちゃんと動かん。何故だ。