opensocial

mixiアプリ「大喜利PHPプレイバック」を公開しました

個人で作ったmixiアプリ「大喜利PHPプレイバック」の審査が通り、無事公開になりました。 http://mixi.jp/view_appli.pl?id=16441 大喜利サイト「2ちゃんねる板対抗大喜利PHP(→URL)」のおもしろ回答を眺めたりお気に入りに入れたりするアプリです。大喜利…

mixiアプリの説明ページへはtop.location.href

書籍「mixiアプリをつくろう!」では、下記のような方法が紹介されています。 if(person.hasApp) { //... }else{ top.window.location.href = viewMixiAppUrl; } 上記コードはIE8.0では遷移しませんでした。 サイ本で確認したところ、topプロパティは最上位…

JavaによるOAuthでmixiアプリの署名付きリクエストがCertificateException

mixiアプリから署名付きリクエストをJavaのServlet(Google App Engine)に送ってみたところ、下記の例外が発生しました。 net.oauth.OAuthException: java.security.cert.CertificateException: Could not parse certificate: java.io.EOFException at net.…

OSDE1.0.0でキャッシュを回避する一番いい方法は?

OpenSocial Develepment Environment(OSDE)での開発時、外部化したjsを修正した際にその修正を即座に反映してもらえると、開発が楽ちんです。 しかしキャッシュが効いてて変更が反映されない場合があります。外部ファイルをどう指定するかによって、修正の反…

opensocial-jqueryでのタブ

gadget.xml <div id="tabs"> <ul> <li><a href="#tab1">タブ1</a></li> <li><a href="#tab2" >タブ2</a></li> </ul> <div id="tab1">タブ1のコンテンツ</div> 2のコンテンツ</div> </div> <script type="text/javascript"> $("#tabs").tabs(); </script> opensocial-jquery.js /** * Tabs */ $.fn.tabs = function(fn) { return this.each(fun…

ソーシャルアプリの開発/本番環境の外部サーバ接続先を自動で切り替える

今作っているソーシャルアプリは、絶対パスで外部サーバのURLを指定している。 外部サーバはGoogle App Engineなので、開発環境と本番環境が用意されている。 絶対パスなので、普通にやるとアプリのデプロイ前に接続先のURLを書き換えないといけないので面倒…

OSDEでgadget.xmlに表示される警告の黄色い波線を消す

gadget.xmlを開くと、No grammar constraints (DTD or XML schema) detected for the document.と右に表示されたり、すべての行に黄色の波線が表示される。 右の警告はともかく、波線は編集するのに邪魔。 この波線はEclipseのValidatorが有効になっているた…

opensocial-jquery.jsとjsdeferred.jsを一緒に使ってみる

APIからJSON配列を取得して要素を展開する処理は、opensocial-jquery.jsでは下記のように記述できます。 $(document).ready(function(){ $.getJSON("/boke/randomArray?size=5") .next(function(data) { var bokes = data.randomArray; alert(bokes.length);…

jsdeferredのloop()とwait()

jsdeferred.jsを利用すると、待機処理を伴うループを簡潔に記述できる。 Deferred.loop(10, function(i){ return $.getJSON("./boke/random").next(function(data){ //... dom操作(1) return Deferred.wait(1); }) .next(function(){ // ...DOM操作(2) retur…

opensocial-jqueryのgetData()

getData()を使わずにマイミク情報表示 $(document).ready(function(){ var params = {}; params[opensocial.IdSpec.Field.USER_ID] = opensocial.IdSpec.PersonId.VIEWER; params[opensocial.IdSpec.Field.GROUP_ID] = "FRIENDS"; var idSpec = opensocial.n…

mixiアプリにおけるRestful API for PCのJavaサンプルコード

mixi Developer Center (ミクシィ デベロッパーセンター) » 2-legged OAuthによるAPIアクセス mixi developer Centerにはphp, python, perlのサンプルコードが記載されているが、Javaのサンプルコードがない。 そこでJavaでRestful API for PCによって、アカ…

ソーシャルアプリセミナーに行ってきた

人気ソーシャルアプリの作り方〜超人気ソーシャルアプリの企画開発者によるパネルディスカッション : ATNDにいってきました。(Twitterタグは #sac2010) スタッフ、登壇者のみなさまおつかれさまでした。 ソーシャルアプリコンテスト 最初に、株式会社オプト…

mixiアプリをインストールしたマイミク同士で遷移するUIのサンプルコード

OWNERのプロフ画像とニックネームを表示 アプリをインストールしているマイミクの一覧と各自をOWNERとしたアプリへ遷移するボタン 動作はchrome4.0で確認 js function init() { var req = opensocial.newDataRequest(); req.add(req.newFetchPersonRequest(o…

opensocialで、永続化したデータを取得するまでのシーケンス図

※2010/02/13 20:00 画像差し替え get()だのgetData()だのgetField()だのがややこしくてこんがらがってしまったので、astah*でシーケンス図作った。 自分のなかでだいぶ整理できた気がする。印刷して貼っとこ。 DataResponseクラスやResponseItemクラスは覚え…

newFetchPersonAppDataRequestのパラメータは1行で記述できる

newFetchPersonAppDataRequest()の第一引数の渡し方。空のオブジェクトparamをつくって、パラメータを設定。 var req = opensocial.newDataRequest(); var param = {}; param[opensocial.IdSpec.Field.USER_ID] = opensocial.IdSpec.PersonId.VIEWER; param[…

newUpdatePersonAppDataRequestで更新できるのはVIEWERだけ

OWNERの情報は書き換えられない。 ownerのアプリの状態をVIEWERが直接変更できないってことだ。 サンシャイン牧場で水をあげるみたいな操作はkey-valueではどうやって管理してるんだろう?外部DB?mixiアプリ » mixiアプリ(PC) » mixiアプリを作ってみよう…

ローカル環境でopensocial実行。Eclipse3.5.1 + Opensocial Development Environment(OSDE) 0.5.0

環境構築にあたって参考にさせていただいたサイトの記事→mixi アプリ 大全集 上記記事で、Run AsのArgumentの設定はインストール時に有効になっており、不要だった。(バージョンの違いによるものと思われる) 基本操作 新規プロジェクトの作成 ウィザードに…