flashでmixiアプリを作ってみたー

mixiでいつの間にかOpenSocialmixiアプリが作れるようになったようなので、試しにFlash(Flex)で作ってみましたー:)

はじめてのmixiアプリ
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なので、Flashmixiのデータを取り扱う場合、javascriptFlashを通信させたりします。そのために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アプリかー