前回のエントリーの続きです。
OpenSocial入門 ~ソーシャルアプリケーションの実践開発
第三章
「OpenSocia API」ではアプリをインストールをした人が「OWNER」、アプリを利用した人が「VIEWER」となる。
アプリ開発者は、実行時に「誰に実行されているのか?」「誰に対する機能なのか?」を意識して開発する必要がある。
OpenSocialアプリケーションを開発には以下の環境が必要になります。
- Gadgets XMLファイルを配置するWebサーバー
- OpenSocialアプリを登録実行するOpensocial対応SNS
- 使い慣れたテキストエディタ
[cc lang="xml"]
Gadget XMLファイルの基本構成
外部から参照する場合は
タグをつける
gadgets.util.registerOnLoadHander()関数を使い最初に実行されるJavaScriptを指定する。
第四章
ModulePrefsタグ内の記述
OpenSpcialアプリケーションのメタ要素が記述される。作成者の名前、アプリで使用する機能の宣言など。
titleとdescriptionの記述内容はSNS運営側の審査で詳しく精査される可能性が強いので、明瞭かつ簡単に記載する必要がある。この審査内容はauthor_emailで記載したメールアドレス宛に通知されるので必ず記載しよう。
[TABLE=2]
「ModulePrefs」中の小タグの記述 Requierタグは複数記述することができます。 [TABLE=4]
Contentタグ
ContentタグにはHTMLとURLと種別が分かれている。
主な属性
- type:コンテンツの種別 html or rul と値を入れる
- view:コンテンツの適用先となるビューの名前。home, profile, canvas, preview。
- href :外部コンテンツのURL
[cc lang="xml"]
種別をURLにした場合は指定した外部のコンテンツをそのまま表示します。ただし、OpenSocial Javascript APIが使えないのでSNSから会員情報や友達情報が利用できません。
アクセス元の国によって表記を変えることができます。その際は
ユーザー設定項目を定義する
ユーザーの設定によりOpenSocialアプリの動作を変えたい場合、前もって登録してもらいます。
Moduleタグの小タグであるUserPrefタグで指定します。
display属性に"enum"を指定した場合、EnumValueタグを使い選択肢を作らなくてはいけません。
[cc lang="xml"]
コンテンツを事前ローディング
外部から画像、音楽、動画を読み出す際にどうしても時間がかかる場合があります。利用者にそれを感じさせないようにすることが開発者には必要です。 そのためOpenSocialには、動的コンテンツの場合は起動時に事前に先読みを行う機構が、静的コンテンツにはURLをキャッシュ対応のURLに置換する機構が提供されています。
動的コンテンツの場合
先読みする機構は
[cc lang="xml"]
静的コンテンツの場合
キャッシングに関する機構は、
[cc lang="xml"]
[/cc]
ライフサイクルイベント
利用者がインストールした時や、逆にアンインストールした時などが発生した時開発者に通知する機構があります。
これにより、もしアンインストールされたら会員の蓄積したデータをDBから削除するなど何らかの対応をとることができます。
[cc lang="xml"]
[TABLE=5]