flashでmixiアプリを作ってみたー
mixiでいつの間にかOpenSocialのmixiアプリが作れるようになったようなので、試しにFlash(Flex)で作ってみましたー:)
http://platform001.mixi.jp/view_appli.pl?id=1097
ぱっと見、インディーズコーナーにチャットがあんまりなかったんで、簡単なチャットを作りました。アプリ名も画像もちょーてきとーです。今はまったく聞かなくなったCocomoさんのチャット機能を使いました。アプリウィンドウの大きさは、だいたいwidth="210" height="130"でぎりぎりっぽいです。まー、中身はまったく凝ってないんで説明は省略して、使ったライブラリをご紹介します。
ひとつめはOpenSocial Actionscript Client Library↓
opensocial-actionscript-client
http://code.google.com/p/opensocial-actionscript-client/
mixiアプリのI/Fは基本JavaScript APIなので、Flashでmixiのデータを取り扱う場合、javascriptとFlashを通信させたりします。そのためにExternalInterfaceとかいうややこしいものを使わないといけないのですが、このライブラリはjavascriptAPIの代わりとなって、そのあたりをラクーにパスできるようになっています。OSのバージョンが0.8と同じですし、とっても簡単にmixiのOSにもアクセスできました。
ソース的にはこんな感じ。ニックネーム取得してます。
import com.nextgenapp.opensocial.Container; import com.nextgenapp.opensocial.DataRequest; import com.nextgenapp.opensocial.Request; import com.nextgenapp.opensocial.Person; import com.nextgenapp.opensocial.DataResponse; import com.nextgenapp.opensocial.idSpec.PersonId; import com.nextgenapp.opensocial.standard.StandardContainer; import com.nextgenapp.opensocial.ResponseItem; import com.nextgenapp.opensocial.Name; private var container:Container = null; private function initConn():void { container = Container.instance; container.setContainer(new StandardContainer()); var dr:DataRequest = container.newDataRequest(); var r:Request = null; var oParam:Array = [com.nextgenapp.opensocial.Person.Field.NICKNAME]; r = new Request(Request.PERSON_REQUEST, oParam, PersonId.VIEWER); dr.add(r); dr.send(CallbackViewer); } private function CallbackViewer(ReturnData:DataResponse):void { var r:ResponseItem = ReturnData.get(PersonId.VIEWER) as ResponseItem; var p:Person = r.getData() as Person; auth.userName = p.getField(com.nextgenapp.opensocial.Person.Field.NICKNAME); // ユーザ名を設定 cSession.login(); // cocomoにログイン ・・・・ }
ふたつめは、mixiアプリに直接関係ないのですが、Trace等ログをFirebugに表示するためのやつ↓
flash-thunderbolt
http://code.google.com/p/flash-thunderbolt/
いつもはローカルでデバッグしてからアップするのですが、mixiアプリはmixi上でしか動かせないのでデバッグがめんどいー!となっているところの救世主です!Firebugにログを表示できる代物です。Firebugも初めて使ったのですが、とても使える!
つーわけで、今度はiPhoneアプリかー