F.Ko-Jiの「一秒後は未来」

MySpaceとOpenSocialってどうよ?な勉強会に行ってきました

OpenSocialとかどうよ?的な勉強会へのお誘い | IDEA*IDEA で告知されていたMySpace勉強会に参加してきました。

MySpaceは先ごろMyspace Developer Platform(MDP)という、MySpace上で動くアプリケーションを開発できるプラットフォームを発表しています。そのMDPとMySpaceが提供するAPIについて、来日中のUS開発チームとOpenSocialに興味津々なエンジニアとの間で議論(といってもゆるい感じで)がおこなわれました。

viewについて

いきなりviewと言われても「なんのこっちゃ」かもしれませんが、本文中にviewという言葉が出てくるので簡単にviewについて説明しておきます。

viewというのはそのOpeSocialアプリケーションが表示されている画面のことで、MySpaceでは

  • Home: ユーザのホーム(ログイン直後の画面)
  • Profile: ユーザのプロフィール画面
  • Canvas: そのアプリケーションのみが表示されるキャンバス画面

などのviewが用意されています。このviewは gadgets.views.getCurrentView() というOpenSocial APIのメソッドで取得できるので、アプリケーション側ではviewによって表示や処理を分けることができます。

OpenSocial APIとMyOpenSpace

MySpaceの提供するAPIの一つに MyOpenSpace というAPIがあります。これはMySpaceが独自に持つデータを扱えるようにOpenSocial APIを拡張したもののようです。

MyOpenSpaceを利用することで、アプリケーションはMySpace上でユーザが公開しているデータにアクセスすることができ、そのデータをアプリケーションで利用することができます。

リファレンスについては MySpace Developer Platform に用意されています。また、実際のライブラリのソースコードを読みたい場合は MySpace Developer Platform からダウンロードできます。

許可されていないユーザのデータは利用できない

さて、MySpaceのAPIを利用するとMySpaceのユーザのデータをアプリケーションで利用できるわけですが、実はあるユーザのデータを利用できるかどうかは

  • ユーザがアプリケーションをプロフィールページに追加しているか
  • その際にユーザがアプリケーションごとにデータの利用を許可しているか

によって決まります。つまり、アプリケーションは許可されていないユーザのデータを利用できません。そのため、必ずしも他人のプロフィールページを訪れたユーザが、そこにあるアプリケーションの機能をすべて利用できるとは限らないようです。

ただしアプリケーション側で、

  • 今アプリケーションがどのviewに表示されているか
  • 訪問ユーザのデータを取得できるか

といった情報を知ることができるので、それによってアプリケーションの見せ方を変えることはできます。「まだインストールしていないユーザにはインストールを促す」といったこともできるでしょう。

公開したアプリケーションを広めるには?

いざアプリケーションを公開しても、「自分のアプリケーションをどのようにユーザに広めればよいか?」という疑問があると思います。考えられる手段としては、

  • 外部のサイトでプロモーション
  • フレンドの多いユーザに使ってもらう
  • バズで広める(MySpace上のメッセージ機能やNewsFeedなど)

といった手段が有効なようです。また、多くのユーザがアプリケーションをインストールしてくれれば、アプリケーションギャラリーの上位に表示されるようになるそうなので、さらにユーザを獲得することができます。

ちなみにSNS上のアプリケーションとしてはFacebookが有名ですが、やはりFacebookからMySpaceへ多くのアプリケーションが移植されているそうです。また、人気を集めているアプリケーションの多くがFacebook生まれのものだそうです。

開発者は収益を得ることができる

アプリケーションから開発者が収益を得る方法としては、広告を使うことが一般的だろうとのことです。

ただし、アプリケーション内に広告を表示できるviewはキャンバスのみに限られているので注意が必要です。つまり、ユーザのホームやプロフィールページに広告を表示させることはできません。

また、アプリケーションからユーザに課金をする仕組みは現在開発中とのことです。

そもそもOpenSocialは開発者を楽にするか

よく「OpenSocialでひとつアプリケーションを作れば、それをOpenSocialに対応したすべてのSNSに提供できる」と言われています。

しかし、MySpaceが独自に定義しているデータや機能については、当然ながら他のSNSは対応していません。そのため、開発者は「今アプリケーションがどのSNSで動いているか」によってアプリケーションの処理を変える必要が出てきます。

しかし、まったく仕様が異なるわけではないのでアプリケーション開発者の負担は確かに軽くなります。また、本家のOpenSocial APIの仕様にのみ準拠したアプリケーションであれば、すべてのSNSに対応したアプリケーションを開発することはできます。

感想

今回はMySpace開発チームの方々が実際に簡単なアプリケーションを組むデモを見せてくれました。個人的にはそのデモで、viewという考え方があるということと、Owner(アプリケーションをインストールしたユーザ)とViewer(プロフィールページを見ているユーザ)という考え方があるということを知って、OpenSocialのアプリケーションを開発するコツがなんとなく分かった気がします。

「MySpace独自の仕様にもとづいてアプリケーションを作ったら他のSNSに展開するときどうなるの?」というのは参加者の方々も疑問に思っていたようです。回答としては「他のSNSへの展開が楽になる」といったところでしょうか。

参加メンバーの間で交わされた内容をすべてメモしていたわけではないので、以下の他の参加者の方々のレポートもあわせてお読みください。

» Tender Surrender » OpenSocialとかどうよ?的な勉強会(!?)に参加してきた
» MySpace&OpenSocial系の勉強会: suadd blog
» MySpace勉強会 – 胃痛!イトマサのいわゆるチラシの裏 – 楽天ブログ(Blog)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

著者について

fkoji

F.Ko-Ji

Webエンジニアやってます。最近は ドットインストール の開発がお仕事です。その傍ら、個人で Meity電車遅延なう梅酒.in#グラドル自画撮り部 の部室といったネットサービスを開発・運営してます。梅酒と草野球とリアル脱出ゲームが好きです。

» 詳しいプロフィールや運営サービスの一覧など