mixiアプリで体験する open social

16
Mixi Mixi アアアア アアア アアアア アアア OpenSo OpenSo cial cial

Upload: ngi-group

Post on 27-May-2015

1.895 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Mixiアプリで体験する Open Social

MixiMixi アプリで体験する アプリで体験する OpOpenSocialenSocial

Page 2: Mixiアプリで体験する Open Social

OpenSocialOpenSocial とは?とは?

OpenSocial OpenSocial は、ウェブベースのソーシャルネットワークアプリは、ウェブベースのソーシャルネットワークアプリケーションのための共通のアプリケーションプログラミングインタケーションのための共通のアプリケーションプログラミングインタフェース(フェース( APIAPI )群。)群。 Google Google によって開発され、によって開発され、 20072007 年年 1111 月月 11日にリリースされた。日にリリースされた。

OpenSocial API OpenSocial API を実装しているアプリケーション群は、それらをサを実装しているアプリケーション群は、それらをサポートするソーシャルネットワークシステムと相互運用性を持つ。ポートするソーシャルネットワークシステムと相互運用性を持つ。

MySpaceMySpace 、、 FriendsterFriendster 、、 mixi mixi などのサイトが賛同している。などのサイトが賛同している。                                                                

        ※※ wikipediawikipedia よりより

大げさに言うとインタフェースをファイル1個に統一して、いろんな SNS でサービスできるんだぜ的な仕組み

Page 3: Mixiアプリで体験する Open Social

身近で流行ってる(?)身近で流行ってる(?)miximixi アプリでやってみよう!アプリでやってみよう!

Page 4: Mixiアプリで体験する Open Social

Gadget XMLGadget XML ファイル を作るファイル を作る

※※mixi Developermixi Developer よりより

<?xml version="1.0" encoding="UTF-8"?><?xml version="1.0" encoding="UTF-8"?><Module><Module>

<ModulePrefs title="Hello, world!"><ModulePrefs title="Hello, world!"><Require feature="opensocial-0.8" /><Require feature="opensocial-0.8" />

</ModulePrefs></ModulePrefs><Content type="html"><![CDATA[<Content type="html"><![CDATA[

<div>Hello, <span id="target"></span>!</div><div>Hello, <span id="target"></span>!</div>

<script type="text/javascript"><script type="text/javascript">     function init() {function init() {         var req = opensocial.newDataRequest();var req = opensocial.newDataRequest();         req.add(req.newFetchPersonRequest(opensocial.IdSpec.PersonId.VIEWER), "viewer");req.add(req.newFetchPersonRequest(opensocial.IdSpec.PersonId.VIEWER), "viewer");         req.send(function(data) {req.send(function(data) {             var viewer = data.get("viewer").getData();var viewer = data.get("viewer").getData();

                                   var name = viewer.getDisplayName();var name = viewer.getDisplayName();                                   document.getElementById("target").innerHTML = name;document.getElementById("target").innerHTML = name;                               });});

     }}                           gadgets.util.registerOnLoadHandler(init);gadgets.util.registerOnLoadHandler(init);                       </script></script>

]]></Content>]]></Content></Module></Module>

まずはまずは XMLXML ファイルを作成して、ファイルを作成して、 WebWeb サーバにアップします。サーバにアップします。SNSSNS 側ではこのファイルを読み込んで、アプリケーションを表示しま側ではこのファイルを読み込んで、アプリケーションを表示しま

す。す。

Page 5: Mixiアプリで体験する Open Social

SNSSNS にアプリを登録するにアプリを登録する

アプリ登録アプリ登録 URL URL http://http://mixi.jp/add_appli.plmixi.jp/add_appli.pl

ここに作成したここに作成した Gadget XMLGadget XML のの URLURL を入力を入力

Page 6: Mixiアプリで体験する Open Social

あとはアプリ名などアプリの情あとはアプリ名などアプリの情報報

を入力して登録終了です。を入力して登録終了です。※※ ちなみにモバイル版の配信はパートナー登録ちなみにモバイル版の配信はパートナー登録

を行わないとだめなので、今回はを行わないとだめなので、今回は PCPC 版です版です

Page 7: Mixiアプリで体験する Open Social

動かしてみる動かしてみる

動きました。動きました。

Page 8: Mixiアプリで体験する Open Social

ちょっとだけちょっとだけ GadgetXMLGadgetXML を解説を解説

<ModulePrefs title="Hello, world!"><ModulePrefs title="Hello, world!"><Require feature="opensocial-0.8" /><Require feature="opensocial-0.8" />

</ModulePrefs></ModulePrefs>

使用するモジュールを記述したりします。使用するモジュールを記述したりします。

他にも他にも <Require feature="opensocial-0.8" /><Require feature="opensocial-0.8" /> <Require feature="opensocial-0.7" /><Require feature="opensocial-0.7" /> <Require feature="pubsub" /><Require feature="pubsub" /> <Require feature="views" /><Require feature="views" /> <Require feature="flash" /><Require feature="flash" /> <Require feature="skins" /><Require feature="skins" /> <Require feature="dynamic-height" /><Require feature="dynamic-height" /> <Require feature="settitle" /><Require feature="settitle" /> <Require feature="minimessage" /><Require feature="minimessage" /> <Require feature="tabs" /><Require feature="tabs" />と書けたりといろいろあるようです。と書けたりといろいろあるようです。

FlashFlash コンテンツであれは「 コンテンツであれは「 feature=“flash” feature=“flash” 」を使用します。」を使用します。

Page 9: Mixiアプリで体験する Open Social

ちょっとだけちょっとだけ GadgetXMLGadgetXML を解説を解説

<Content type="html"><![CDATA[<Content type="html"><![CDATA[<div>Hello, <span id="target"></span>!</div><div>Hello, <span id="target"></span>!</div>

<script type="text/javascript"><script type="text/javascript">     function init() {function init() {         var req = opensocial.newDataRequest();var req = opensocial.newDataRequest();         req.add(req.newFetchPersonRequest(opensocial.IdSpec.PersonId.VIEWER), "viewer");req.add(req.newFetchPersonRequest(opensocial.IdSpec.PersonId.VIEWER), "viewer");         req.send(function(data) {req.send(function(data) {             var viewer = data.get("viewer").getData();var viewer = data.get("viewer").getData();

                                 var name = viewer.getDisplayName();var name = viewer.getDisplayName();                                 document.getElementById("target").innerHTML = name;document.getElementById("target").innerHTML = name;                             });});

     }}             gadgets.util.registerOnLoadHandler(init);gadgets.util.registerOnLoadHandler(init);         </script></script>]]></Content>]]></Content>

実際に表示する実際に表示する HTMLHTML を記載したり、を記載したり、 JavascriptJavascript を書いたり。を書いたり。

ユーザ情報の取得は、ユーザ情報の取得は、 JavaScriptJavaScript で記載します。で記載します。※※JavaScriptJavaScript じゃなくても、ユーザ情報を取得できますが、ここではじゃなくても、ユーザ情報を取得できますが、ここでは

割愛。割愛。

FLASHFLASH の読み込み・外部通信などもの読み込み・外部通信なども JavaScriptJavaScript です。です。というかほぼというかほぼ JavaScriptJavaScript です。です。

Page 10: Mixiアプリで体験する Open Social

試し実装してて混乱したこと試し実装してて混乱したこと

あらゆる箇所でキャッシュが働く。あらゆる箇所でキャッシュが働く。     - GadgetXML- GadgetXML   アプリの管理画面であったり、   アプリの管理画面であったり、 URLURL にキャッシュ削除パラメーにキャッシュ削除パラメー

タタ を付与して、消さなければなりません。を付与して、消さなければなりません。 - - 画面遷移・画面遷移・ JavascriptJavascript ・・ CSSCSS ・・ imgimg       GadgetXMLGadgetXML 内に記載した、リンク先もキャッシュされるようで内に記載した、リンク先もキャッシュされるようで

す。す。     - - 外部通信外部通信   同じくキャッシュされるようです。   同じくキャッシュされるようです。

いずれもキャッシュを外す方法はあるので、開発効率を上げるためにいずれもキャッシュを外す方法はあるので、開発効率を上げるために注意する必要があるようです。注意する必要があるようです。

Page 11: Mixiアプリで体験する Open Social

試し実装してて混乱したこと試し実装してて混乱したこと

OwnerOwner とと ViewerViewer

     Owner Owner : アプリの持ち主: アプリの持ち主     Viewer Viewer : アプリを操作する人: アプリを操作する人  となります。  となります。

  某育成アプリでは、他の人の育成状況を見れたりしますが、  某育成アプリでは、他の人の育成状況を見れたりしますが、  マイページからアプリを立ち上げた時は、  マイページからアプリを立ち上げた時は、 OwnerOwner は常に自分です。は常に自分です。

  他の人のページからアプリを立ち上げると、  他の人のページからアプリを立ち上げると、 OwnerOwner はページを立はページを立ち上げた際のユーザになります。ち上げた際のユーザになります。

Page 12: Mixiアプリで体験する Open Social

じゃあ何ができるの?じゃあ何ができるの?

友達の情報を利用できる友達の情報を利用できる  公開設定されていないとダメですが、友達の情報をある程度まで取得できる。  公開設定されていないとダメですが、友達の情報をある程度まで取得できる。       miximixi だとだと           - - ユーザプロファイルユーザプロファイル           - - マイミク一覧マイミク一覧           - - マイミクのマイミク一覧マイミクのマイミク一覧           - mixi- mixi 同級生(これは同級生(これは miximixi特有)特有)   などなど   などなど 友達同士で情報共有友達同士で情報共有     ViewerViewer とと OwnerOwner で情報永続化して共有することができる。で情報永続化して共有することができる。     Key-ValueKey-Value でデータを保持して、取得・保存ができます。でデータを保持して、取得・保存ができます。 アクティビティ送信ができるアクティビティ送信ができる  マイページの中央あたりに出てる、ほかのマイミクのアプリのアクション情報  マイページの中央あたりに出てる、ほかのマイミクのアプリのアクション情報 メッセージ送信メッセージ送信  メッセージが送れます。  メッセージが送れます。

※※ アプリを考える上で、よく使うかなと思うのもだけ抜粋しました。アプリを考える上で、よく使うかなと思うのもだけ抜粋しました。  他にも機能あると思いますので、もうちょっと調べたい。  他にも機能あると思いますので、もうちょっと調べたい。

SNSSNS であれば取れるべき情報かなーとは思いますが、コミュニケーションする友達がリアルな友達であれば取れるべき情報かなーとは思いますが、コミュニケーションする友達がリアルな友達である可能性が非常に高いので、これらの情報は非常にありがたいと思います。である可能性が非常に高いので、これらの情報は非常にありがたいと思います。コミュニティなど、ピンポイントのターゲット層に対してアプリを提供したり、コミュニティなど、ピンポイントのターゲット層に対してアプリを提供したり、MixiMixi 同級生のように同級生のように SNSSNS特有のユーザの切り口など、いろいろ考えることができるので非常に面白いなと特有のユーザの切り口など、いろいろ考えることができるので非常に面白いなと

思います。思います。

Page 13: Mixiアプリで体験する Open Social

も一つ疑問。も一つ疑問。ほんとに同じファイルでほんとに同じファイルで

他の他の SNSSNS でもつかえるのか?でもつかえるのか?

Page 14: Mixiアプリで体験する Open Social

miximixi orkutorkut

動きました。動きました。

よく見ると、よく見ると、 SNSSNS によっては取れる情報が違うようです。によっては取れる情報が違うようです。同じサービスを展開しようとなると、このへんの情報も知っておく必要ありで同じサービスを展開しようとなると、このへんの情報も知っておく必要ありですかね。すかね。

Page 15: Mixiアプリで体験する Open Social

MoneyMoney な話な話

MixiMixi でアドプログラムに申込むとでアドプログラムに申込むと PVPV で報酬がもらえるで報酬がもらえる  簡単に、  簡単に、  マイアプリ1万人登録しないと   マイアプリ1万人登録しないと PVPV単価0.01円単価0.01円  以降月間・デイリーの  以降月間・デイリーの UUUU の順位によって単価が変化の順位によって単価が変化

  モバイルは月間・デイリーの  モバイルは月間・デイリーの UUUU の順位のみで単価が変動。の順位のみで単価が変動。  20位以内じゃないと  20位以内じゃないと PVPV単価は0.01円単価は0.01円

  詳しくは  詳しくは DevelopDevelopページを参照のこと。ページを参照のこと。

  このほか、ペイメントプログラムというのもあるよう。  このほか、ペイメントプログラムというのもあるよう。     miximixi ポイントを使用してもらうこともできるらしい。ポイントを使用してもらうこともできるらしい。  こっちだと、ポイント額の  こっちだと、ポイント額の 7070~~ 8080%がもらえるらしい。%がもらえるらしい。

Page 16: Mixiアプリで体験する Open Social

まとめまとめ

アプリを提供するターゲットがわかりやすいアプリを提供するターゲットがわかりやすい  0から会員をかき集めるのは非常に大変です。  0から会員をかき集めるのは非常に大変です。  ですが、  ですが、 SNSSNS はある程度会員が集まっている中で、さらにコミュはある程度会員が集まっている中で、さらにコミュ

ニティなどニティなど  ターゲット層の絞り込みができるとなると、  ターゲット層の絞り込みができるとなると、  ターゲットに対して的確なサービスの提供が出来そうな気がします。  ターゲットに対して的確なサービスの提供が出来そうな気がします。  これって結構すごいことだと思います。  これって結構すごいことだと思います。

複数の複数の SNSSNS で展開できる可能性があるで展開できる可能性がある 工夫は必要ですが、少ない手間かもしくはそのままで工夫は必要ですが、少ない手間かもしくはそのままで  別  別 SNSSNS で展開できる可能性はあると思います。で展開できる可能性はあると思います。

とりあえず、個人で遊び感覚で始めてみてもいいかもしれません。とりあえず、個人で遊び感覚で始めてみてもいいかもしれません。遊んでいるうちにいろいろ発見があるかも!遊んでいるうちにいろいろ発見があるかも!