<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>alt &#187; AS3</title>
	<atom:link href="http://blog.alt-scape.com/archives/tag/as3/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.alt-scape.com</link>
	<description>alt-scape weblog</description>
	<lastBuildDate>Sat, 03 Dec 2011 18:00:33 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Flashで入力フォームの点滅カーソルを自力で作る</title>
		<link>http://blog.alt-scape.com/archives/393</link>
		<comments>http://blog.alt-scape.com/archives/393#comments</comments>
		<pubDate>Tue, 01 Feb 2011 05:51:48 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[サンプル]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[コンポーネント]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=393</guid>
		<description><![CDATA[






銀行のATM、カラオケのタッチ式リモコン、居酒屋の注文タッチパネル、
スマートフォン、テレビと今後フルタッチインターフェイスを
Flashで作るケースが増えてくるかもしれませんのでテキストまわりでつまづいた [...]]]></description>
			<content:encoded><![CDATA[<p>
<div id="scrollH"></div>
<script type="text/javascript">
<!--
	var so_hd = new SWFObject("http://blog.alt-scape.com/swf/scrollH.swf", "hd", "500", "200", "10", "#000000");
	so_hd.addParam("wmode", "window");
	so_hd.addParam("allowFullScreen", "true");
	so_hd.addParam("menu", "false");
	so_hd.write("scrollH");
-->
</script>
<br />
<p style="line-heigth: 130%;">
銀行のATM、カラオケのタッチ式リモコン、居酒屋の注文タッチパネル、<br />
スマートフォン、テレビと今後フルタッチインターフェイスを<br />
Flashで作るケースが増えてくるかもしれませんのでテキストまわりでつまづいた方に。<br />
<br />
TextInputコンポーネントを使用して<strong>テキスト入力フォーム</strong>を作った場合、<br />
通常、キーボードからは自動入力されますが<br />
Flash上にソフトウェアキーボードを用意した場合は<br />
マウス操作、タッチ操作時のイベントハンドラにスクリプトから<br />
入力フォームにテキストを代入してあげないといけません。<br />
このとき問題なのが、入力フォームを選択したときに出る縦の<strong>点滅カーソル</strong>が<br />
テキストの長さに応じてついてきてくれません。（もちろん十字キーでは移動できるよ）<br />
そこでTextInputコンポーネントではなく、<br />
TextFieldクラスの<strong>ダイナミックテキスト</strong>か<strong>テキスト入力</strong>に設定して<br />
<strong>scrollH</strong>プロパティを使って、点滅カーソル移動を実装してみる。<br />
<br />
<span id="more-393"></span><br />
やり方はいたって簡単で、<br />
常に最新の<strong>textWidth</strong>プロパティを<strong>scrollH</strong>に反映してあげるだけ。<br />
上のswfは1秒ごとにテキスト入力に1からの連番を放り込んでいるサンプルです。<br />
<br />
flaは<a href="http://blog.alt-scape.com/fla/scrollH.fla" title="点滅カーソルサンプルソース">こちら</a>。<br />
</p>
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/393/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FlashからHTTP/HTTPSリクエストしてBasic認証を通過する方法</title>
		<link>http://blog.alt-scape.com/archives/391</link>
		<comments>http://blog.alt-scape.com/archives/391#comments</comments>
		<pubDate>Tue, 25 Jan 2011 09:11:10 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[サンプル]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[ソースコード]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=391</guid>
		<description><![CDATA[
URLLoaderクラスを使ってHTTP/HTTPSリクエストをする先にBasic認証がかかっていたら、
URLRequestHeaderメソッドを使ってヘッダーに認証情報を付加すればOK。
ヘッダーに付加するid/p [...]]]></description>
			<content:encoded><![CDATA[<p>
<strong>URLLoader</strong>クラスを使って<strong>HTTP</strong>/<strong>HTTPS</strong>リクエストをする先に<strong>Basic認証</strong>がかかっていたら、<br />
<strong>URLRequestHeader</strong>メソッドを使ってヘッダーに認証情報を付加すればOK。<br />
ヘッダーに付加するid/passはBase64エンコードしなければならないのですが<br />
FlexにあるBase64EncoderがFlashにはないので<br />
下記にあるas3httpclientライブラリのBase64クラスを使用しました。<br />
Basic認証だと<strong>GET</strong>/<strong>POST</strong>とも問題なかったのですが<br />
<a href="http://www.fxug.net/modules/xhnewbb/viewtopic.php?topic_id=1046&#038;forum=1&#038;post_id=4297#forumpost4297" target="_blank">ここらへん</a>の記事を読んでいると<strong>WSSE認証</strong>ではあやしい動きになるようなので<br />
Basic認証でも<strong>HTTPURLLoader</strong>や<strong>SocketURLLoader</strong>をテストしてみる。<br />
余談ですが、AIRの場合は<strong>URLRequestDefaults</strong>クラスの<br />
<strong>setLoginCredentialsForHost</strong>メソッドという便利なものもあります。<br />
<br />
<span id="more-391"></span><br />
使用するライブラリはこちら。<br />
<br />
<strong>as3httpclient</strong>（SocketURLLoader.as）<br />
<a href="http://code.google.com/p/as3httpclient/">http://code.google.com/p/as3httpclient/</a><br />
（HTTPURLLoader.asは<a href="http://code.google.com/p/as3httpclient/downloads/detail?name=as3httpclient-0.2-source.zip&amp;can=2&amp;q=">ココ</a>からダウンロード）<br />
<br />
<strong>as3corelib</strong>（StringUtil.as）<br />
<a href="http://code.google.com/p/as3httpclient/">http://code.google.com/p/as3corelib/</a><br />
<br />
<br />
■<strong>HTTPURLLoader</strong>でのやり方。（POSTは未対応っぽい）<br />
<pre class="code"><span class="keyword">import</span> flash.net.URLRequest;<br />
<span class="keyword">import</span> flash.net.URLRequestHeader;<br />
<span class="keyword">import</span> com.abdulqabiz.net.HTTPURLLoader;<br />
<span class="keyword">import</span> com.abdulqabiz.crypto.Base64;<br />
<br />
<span class="keyword">var</span> request:URLRequest = <span class="keyword">new</span> URLRequest(<span class="str">&quot;http://blog.alt-scape.com/swf/basic_test/?data1=&quot;</span> + escape(<span class="str">&quot;parameter1&quot;</span>) + <span class="str">&quot;&amp;data2=&quot;</span> + escape(<span class="str">&quot;parameter2&quot;</span>));<br />
request.method = URLRequestMethod.GET;<br />
<br />
<span class="keyword">var</span> loader:HTTPURLLoader = <span class="keyword">new</span> HTTPURLLoader();<br />
loader.addEventListener(<span class="str">&quot;complete&quot;</span>, onComplete);<br />
loader.addEventListener(<span class="str">&quot;httpStatus&quot;</span>, onHTTPStatus);<br />
<br />
<span class="keyword">var</span> id:<span class="keyword">String</span> = <span class="str">&quot;alt&quot;</span>;<br />
<span class="keyword">var</span> password:<span class="keyword">String</span> = <span class="str">&quot;alt&quot;</span>;<br />
<span class="keyword">var</span> credentials:<span class="keyword">String</span> = Base64.encode(id + <span class="str">&quot;:&quot;</span> + password);<br />
<br />
<span class="rem">//create HTTP Auth request header</span><br />
<span class="keyword">var</span> authHeader:URLRequestHeader = <span class="keyword">new</span> URLRequestHeader(<span class="str">&quot;Authorization&quot;</span>,<span class="str">&quot;Basic &quot;</span> + credentials);<br />
<br />
<span class="rem">//add the header to request</span><br />
request.requestHeaders.push(authHeader);<br />
<br />
loader.load(request);<br />
<br />
<span class="keyword">function</span> onComplete(event:Event):<span class="keyword">void</span><br />
{<br />
    <span class="rem">//headers stroed as name-value(hash map)</span><br />
    <span class="keyword">var</span> rh:Object = HTTPURLLoader(event.target).responseHeaders;<br />
    <span class="keyword">var</span> str:<span class="keyword">String</span> = <span class="str">&quot;&quot;</span>;<br />
    <span class="keyword">for</span>(<span class="keyword">var</span> p:<span class="keyword">String</span> <span class="keyword">in</span> rh) str += p + <span class="str">&quot;:&quot;</span> + rh[p] + <span class="str">&quot;\n&quot;</span>;<br />
    debug.appendText(<span class="str">&quot;Response Headers: \n&quot;</span> + str + <span class="str">&quot;\n\n&quot;</span>);<br />
    <br />
    <span class="rem">//data property holds the content</span><br />
    debug.appendText(<span class="str">&quot;Body Content:\n&quot;</span> + HTTPURLLoader(event.target).data + <span class="str">&quot;\n\n&quot;</span>);<br />
}<br />
<span class="keyword">function</span> onHTTPStatus(event:HTTPStatusEvent):<span class="keyword">void</span><br />
{<br />
    <span class="rem">//if httpStatus is 401, 403, 404, 500, 501, socket is closed.</span><br />
    debug.appendText(<span class="str">&quot;Event: httpStatus (&quot;</span> + event.status + <span class="str">&quot;)\n\n&quot;</span>);<br />
}</pre>
<br />
<p style="line-height:170%">
<br />
■<strong>SocketURLLoader</strong>（POSTメソッド）でパラメータを付与してみる。<br />
<pre class="code"><span class="keyword">import</span> code.google.as3httpclient.*;<br />
<span class="keyword">import</span> com.abdulqabiz.crypto.Base64;<br />
<span class="keyword">import</span> flash.net.*;<br />
<span class="keyword">import</span> flash.events.*;<br />
<br />
<span class="keyword">var</span> socketLoader:SocketURLLoader = <span class="keyword">new</span> SocketURLLoader();<br />
socketLoader.addEventListener (HTTPStatusEvent.HTTP_STATUS, handleHTTPStatus);<br />
socketLoader.addEventListener (Event.COMPLETE, handleComplete);<br />
socketLoader.addEventListener (Event.OPEN, handleOpen);<br />
<br />
<span class="keyword">var</span> request2:SocketHTTPRequest = <span class="keyword">new</span> SocketHTTPRequest();<br />
request2.url = <span class="str">&quot;http://blog.alt-scape.com/swf/basic_test/&quot;</span>;<br />
request2.method = URLRequestMethod.POST;<br />
<span class="keyword">var</span> variables:URLVariables = <span class="keyword">new</span> URLVariables();<br />
variables.data1 = escape(<span class="str">&quot;parameter1&quot;</span>);<br />
variables.data2 = escape(<span class="str">&quot;parameter2&quot;</span>);<br />
request2.data = variables;<br />
<br />
<span class="keyword">var</span> id2:<span class="keyword">String</span> = <span class="str">&quot;alt&quot;</span>;<br />
<span class="keyword">var</span> password2:<span class="keyword">String</span> = <span class="str">&quot;alt&quot;</span>;<br />
<span class="keyword">var</span> credentials2:<span class="keyword">String</span> = Base64.encode(id2 + <span class="str">&quot;:&quot;</span> + password2);<br />
<br />
<span class="rem">//create HTTP Auth request header</span><br />
<span class="keyword">var</span> authHeader2:URLRequestHeader = <span class="keyword">new</span> URLRequestHeader(<span class="str">&quot;Authorization&quot;</span>,<span class="str">&quot;Basic &quot;</span> + credentials2);<br />
<br />
<span class="rem">//add the header to request</span><br />
request2.requestHeaders.push(authHeader2);<br />
<br />
socketLoader.load(request2);<br />
<br />
<span class="keyword">function</span> handleHTTPStatus(event:HTTPStatusEvent):<span class="keyword">void</span><br />
{<br />
    debug.appendText(<span class="str">&quot;HTTPStatus: &quot;</span> + event.status + <span class="str">&quot;\n&quot;</span>);<br />
    <span class="keyword">var</span> header:URLRequestHeader;<br />
    <span class="keyword">for</span> <span class="keyword">each</span> (header <span class="keyword">in</span> socketLoader.responseHeaders)<br />
    {<br />
        debug.appendText(header.name + <span class="str">&quot; : &quot;</span> + header.value + <span class="str">&quot;\n&quot;</span>);<br />
    }<br />
}<br />
<span class="keyword">function</span> handleComplete(event:Event):<span class="keyword">void</span><br />
{<br />
    debug.appendText(<span class="str">&quot;Complete: &quot;</span> + socketLoader.data + <span class="str">&quot;\n&quot;</span>);<br />
}<br />
<br />
<span class="keyword">function</span> handleOpen(event:Event):<span class="keyword">void</span><br />
{<br />
    debug.appendText(<span class="str">&quot;Connected...\n&quot;</span>);<br />
}</pre>
<br />
<a href="blog.alt-scape.com/fla/httpurlloader.fla">サンプルファイル</a>（CS5）<br />
<br />
参考記事：<br />
<a href="http://blog.ozacc.com/archives/001749.html" target="_blank">http://blog.ozacc.com/archives/001749.html</a><br />
<a href="http://www.abdulqabiz.com/blog/archives/2006/03/03/http-authentication-for-httpget-requests-using-actionscript-3/" target="_blank">http://www.abdulqabiz.com/blog/archives/2006/03/03/http-authentication-for-httpget-requests-using-actionscript-3/</a><br />
</p>
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/391/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>ASDocsを横断検索してくれるソフト「Doc?」</title>
		<link>http://blog.alt-scape.com/archives/376</link>
		<comments>http://blog.alt-scape.com/archives/376#comments</comments>
		<pubDate>Thu, 01 Apr 2010 05:27:04 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[参考]]></category>
		<category><![CDATA[AS3]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=376</guid>
		<description><![CDATA[



Doc?
http://airdoc.be/

これ便利そうですね。
ASライブラリのドキュメントをURL入力で取り込んでおけば
リファレンスを横断検索できちゃうビュワーです。


とりあえずカヤックさんのブログ [...]]]></description>
			<content:encoded><![CDATA[<p>
<img src="http://blog.alt-scape.com/img/doc1.jpg" alt="Doc?" />
<br />
<br />
<strong>Doc?</strong><br />
<a href="http://airdoc.be/" target="_blank" title="Doc?">http://airdoc.be/</a><br />
<br />
これ便利そうですね。<br />
ASライブラリのドキュメントをURL入力で取り込んでおけば<br />
リファレンスを横断検索できちゃうビュワーです。<br />
<br />
<span id="more-376"></span><br />
とりあえずカヤックさんのブログで紹介されているものに加えて<br />
TwennLiteなどなど以下のdocsを入れておいた。<br />
Wonderflで使えるライブラリなんかは入れておくといいかも。<br />
<img src="http://blog.alt-scape.com/img/doc2.jpg" alt="Doc?" class="imgnostyle" />
<br />
<br />
<strong>ActionScript 3.0 Language and Components Reference JP</strong><br />
<a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/index.html" target="_blank" title="ActionScript 3.0 Language and Components Reference JP">http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/index.html</a><br />
<br />
<strong>Adobe Flex3.5Language Reference</strong><br />
<a href="http://livedocs.adobe.com/flex/3/langref/" target="_blank" title="Adobe Flex3.5Language Reference">http://livedocs.adobe.com/flex/3/langref/</a><br />
<br />
<strong>Adobe Air 1.5 Languarge Reference</strong><br />
<a href="http://help.adobe.com/en_US/AIR/1.5/devappsflex/" target="_blank" title="">http://help.adobe.com/en_US/AIR/1.5/devappsflex/</a><br />
<br />
<strong>Progression4 Reference</strong><br />
<a href="http://asdoc.progression.jp/4.0/" target="_blank" title="Progression4 Reference">http://asdoc.progression.jp/4.0/</a><br />
<br />
<strong>JSFL API Refference</strong><br />
<a href="http://help.adobe.com/en_US/Flash/10.0_ExtendingFlash/" target="_blank" title="JSFL API Refference">http://help.adobe.com/en_US/Flash/10.0_ExtendingFlash/</a><br />
<br />
<strong>Tweener</strong><br />
<a href="http://hosted.zeh.com.br/tweener/docs/en-us/" target="_blank" title="Tweener">http://hosted.zeh.com.br/tweener/docs/en-us/</a><br />
<br />
<strong>TweenLite / TweenMax</strong><br />
<a href="http://www.greensock.com/as/docs/tween/" target="_blank" title="TweenLite / TweenMax">http://www.greensock.com/as/docs/tween/</a><br />
<br />
<strong>Papervision 3D</strong><br />
<a href="http://www.papervision3d.org/docs/as3/" target="_blank" title="Papervision 3D">http://www.papervision3d.org/docs/as3/</a><br />
<br />
<strong>Away3D</strong><br />
<a href="http://away3d.com/livedocs/" target="_blank" title="Away3D">http://away3d.com/livedocs/</a><br />
<br />
<strong>Alternativa3D</strong><br />
<a href="http://help.alternativaplatform.com/en/client/" target="_blank" title="Alternativa3D">http://help.alternativaplatform.com/en/client/</a><br />
<br />
<strong>Box2DFlash 2.1a</strong><br />
<a href="http://www.box2dflash.org/docs/2.1a/reference/" target="_blank" title="Box2DFlash 2.1a">http://www.box2dflash.org/docs/2.1a/reference/</a><br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/376/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash MiniBuilder &#8211; オンラインAS3 IDE</title>
		<link>http://blog.alt-scape.com/archives/353</link>
		<comments>http://blog.alt-scape.com/archives/353#comments</comments>
		<pubDate>Thu, 05 Nov 2009 05:00:04 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[参考]]></category>
		<category><![CDATA[AS3]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=353</guid>
		<description><![CDATA[



前回、AIR版のFlash MiniBuilderをテストしてみましたが、
今回はWEB版のFlash MiniBuilderを設置して
自分のサーバーにwonderfl環境を作ってみます。

ActionScr [...]]]></description>
			<content:encoded><![CDATA[<p>
<img src="http://blog.alt-scape.com/img/flash_builder5.jpg" alt="Flash MiniBuilder" />
<br />
<br />
<a href="http://blog.alt-scape.com/archives/352" target="_blank" title="Flash MiniBuilder – AIR製ActionScriptエディタ">前回</a>、AIR版のFlash MiniBuilderをテストしてみましたが、<br />
今回はWEB版のFlash MiniBuilderを設置して<br />
自分のサーバーに<a href="http://wonderfl.net/" target="_blank" title="wonderfl"><strong>wonderfl</strong></a>環境を作ってみます。<br />
<br />
ActionScript 3 Code Completion<br />
<a href="http://code.google.com/p/as-code-completion/" target="_blank" title="ActionScript 3 Code Completion">http://code.google.com/p/as-code-completion/</a><br />
<br />
<span id="more-353"></span><br />
１．まずは上のページから「<strong>MiniBuilder-web-0.0.2.zip</strong>」をダウンロードします。<br />
<br />
２．MiniBuilder-web-0.0.2というフォルダが展開されるので<br />
フォルダ名を適当な名前にします。<br />
ここでは「minibuilder」というフォルダ名にしておきます。<br />
<br />
３．フォルダ内のindex.htmlを修正します。<br />
＜script type=&#8221;text/javascript&#8221;＞minibuilder(&#8217;<strong>example.as</strong>&#8216;, 350)＜/script＞<br />
となっている箇所を<br />
＜script type=&#8221;text/javascript&#8221;＞minibuilder(&#8221;, 600)＜/script＞<br />
にします。<br />
※350はASエディタの縦サイズになるのでできるだけ大きくしてあげる。<br />
※CSSでエディタの見栄えを自分流にアレンジしてあげる。<br />
<br />
４．設置したい場所にminibuilderフォルダごとアップしてindex.htmlにアクセスすればＯＫ！<br />
<br />
これでめでたくWEB（ブラウザベース）でもFlash開発できるようになりました。<br />
（ASファイルの読み込み・編集、<strong>FlashPlayer10</strong>のコンパイル、保存）<br />
↓↓↓hetemlやsakuraではすんなりいけました。<br />
<br />
MiniBuilder<br />
<a href="http://blog.alt-scape.com/swf/minibuilder/" target="_blank" title="MiniBuilder">http://blog.alt-scape.com/swf/minibuilder/</a><br />
<br />
<br />
参考：<br />
<a href="http://www.victordramba.com/?p=34" target="_blank">http://www.victordramba.com/?p=34</a><br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/353/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash MiniBuilder &#8211; AIR製ActionScriptエディタ</title>
		<link>http://blog.alt-scape.com/archives/352</link>
		<comments>http://blog.alt-scape.com/archives/352#comments</comments>
		<pubDate>Wed, 04 Nov 2009 02:33:41 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[参考]]></category>
		<category><![CDATA[AIR]]></category>
		<category><![CDATA[AS3]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=352</guid>
		<description><![CDATA[


コード補完機能やデバッガもついたActionscriptエディタを発見したのでちょっとテスト。
コンパイルまでやってくれるのでFDTと似たような使い方なのかな。機能はかなり劣るけど。
これ、AIR以外にオンライン上 [...]]]></description>
			<content:encoded><![CDATA[<p>
<object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/bjEc2eT_rCE&#038;hl=ja&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/bjEc2eT_rCE&#038;hl=ja&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object><br />
<br />
コード補完機能やデバッガもついた<strong>Actionscript</strong>エディタを発見したのでちょっとテスト。<br />
コンパイルまでやってくれるのでFDTと似たような使い方なのかな。機能はかなり劣るけど。<br />
これ、AIR以外にオンライン上でコンパイルができるソースも配布しているので<br />
個人用サーバーで<strong>Wonderfl</strong>のような環境作ってブラウザベースで開発もできちゃいますね。<br />
ってことで次回は自分の環境に<strong>Wonderfl</strong>作ってみる。<br />
<br />
<strong>Flash MiniBuilder</strong><br />
<a href="http://code.google.com/p/minibuilder/" target="_blank" title="Flash MiniBuilder">http://code.google.com/p/minibuilder/</a><br />
<br />
まずは準備。以下のものがなければダウンロードします。<br />
<br />
Adobe AIRをインストール<br />
<a href="http://get.adobe.com/air/" target="_blank">http://get.adobe.com/air/</a><br />
<br />
Javaランタイムをインストール (JRE) 1.6～<br />
<a href="http://java.sun.com/javase/downloads/index.jsp#jre"  target="_blank">http://java.sun.com/javase/downloads/index.jsp#jre</a><br />
<br />
Flex SDK 3.0～をインストール 3.4を推奨。4～でもいける。<br />
Cドライブ直下に入れて環境変数を設定。<br />
<a href="http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+3"  target="_blank">http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+3</a><br />
<br />
<span id="more-352"></span><br />
１．AIRファイル「AirMiniBuilder.air」をダウンロードしてインストール。<br />
<br />
２．SetupタブのSDK Pathを設定し、Save。<br />
<img src="http://blog.alt-scape.com/img/flash_builder1.jpg" alt="Flash MiniBuilder1" />
<br />
<br />
３．C:\Program Files\AirMiniBuilder\MBCompilerのstart.batを起動。<br />
<img src="http://blog.alt-scape.com/img/flash_builder2.jpg" alt="Flash MiniBuilder2" />
<br />
<br />
４．SetupタブのCheck againボタンをクリック。<br />
<br />
５．Create New ProjectタブからProject Nameを設定して<br />
Create Projectボタンをクリック。<br />
<br />
６．何か書いて「File」→「Save All」して「Compile」→「Compile and QuickRun」で出力。<br />
※プロジェクトファイルは<strong>.actionScriptProperties</strong>というファイル名で以下のディレクトリに出力されます。<br />
C:\Documents and Settings\○○○\minibuilder\プロジェクト名<br />
<img src="http://blog.alt-scape.com/img/flash_builder4.jpg" alt="Flash MiniBuilder4" />
<br />
<br />
以下のコードでデバッガを表示させることも可能。<br />
import com.victordramba.console.*;<br />
<br />
//uncomment to enable debugger console<br />
Debugger.setParent(this, true);<br />
debug(&#8217;started in &#8216; + this);<br />
<img src="http://blog.alt-scape.com/img/flash_builder3.jpg" alt="Flash MiniBuilder3" />
<br />
<br />
参考：<br />
<a href="http://www.victordramba.com/?p=36" target="_blank" title="Desktop Flash MiniBuilder is out!">http://www.victordramba.com/?p=36</a><br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/352/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>無制限に双方向通信が可能なLocalConnectionクラス「FlashLCS」</title>
		<link>http://blog.alt-scape.com/archives/296</link>
		<comments>http://blog.alt-scape.com/archives/296#comments</comments>
		<pubDate>Fri, 13 Mar 2009 02:46:43 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[サンプル]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[ソースコード]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=296</guid>
		<description><![CDATA[



こちらで「FlashLCS」という新しいLocalConnectionライブラリが言及されています。

ライブラリのダウンロード先：
http://code.google.com/p/flashlcs/

ライブ [...]]]></description>
			<content:encoded><![CDATA[<p>
<img src="http://blog.alt-scape.com/img/localconnection.jpg" alt="LocalConnectionクラス「FlashLCS」" class="imgnostyle" />
<br />
<br />
<a href="http://labs.blitzagency.com/?p=650" target="_blank" title="New open source project enables unlimited local runtime collaboration for the Flash Platform.">こちら</a>で「<strong>FlashLCS</strong>」という新しい<strong>LocalConnection</strong>ライブラリが言及されています。<br />
<br />
ライブラリのダウンロード先：<br />
<a href="http://code.google.com/p/flashlcs/" target="_blank" title="flashlcs">http://code.google.com/p/flashlcs/</a><br />
<br />
ライブラリの特長：<br />
    * 従来の<strong>LocalConnection</strong>に必要なソースコードと作業時間を劇的に短縮します。<br />
    * 同じコンピュータ上で動きながら、2つのFlash間で<strong>無制限</strong>な<strong>双方向通信</strong>を可能にします。<br />
    * Flashプラットフォームのための新しい可能性を拡げます。デスクトップアプリケーション同士やブラウザでマルチスレッド化されたFlashアプリケーションの通信も。<br />
<br />
<span id="more-296"></span><br />
残念なことにライブラリに付属のサンプルソースに<strong>CS3</strong>版があったのに<br />
現在は<strong>CS4</strong>と<strong>FlexBuilder3</strong>のみになっています。<br />
僕は事前に落としておいたので<strong>CS3</strong>で試してみます。<br />
<br />
サンプル手順：<br />
1. 以下に300&#215;300の片方のFlashを表示させます。<br />
2. シフトキーを押しながらこの <a href="http://blog.alt-scape.com/swf/localconnection/other.html" target="_blank"><strong>リンク</strong></a> をクリックして新規ブラウザを開きます。<br />
3. 新規ブラウザで開いたもう一方のFlashが画像をロードします。<br />
4. 画像データをByteArrayに突っ込んで<strong>LocalConnectionService</strong>を通して以下のFlash上に表示させます。<br />
　　以下のFlashからは毎秒もう一方のFlashのマウス位置周辺画像を取得しにいくようになってます。<br />
<div id="so_lcs"></div>
<script type="text/javascript">
<!--
	var so_lcs = new SWFObject("http://blog.alt-scape.com/swf/localconnection/lcs_1.swf", "lcs", "300", "300", "9", "#000000");
	so_lcs.addParam("wmode", "window");
	so_lcs.addParam("allowFullScreen", "true");
	so_lcs.addParam("menu", "false");
	so_lcs.write("so_lcs");
-->
</script>
<br />
<a href="http://blog.alt-scape.com/fla/localconnection.zip" target="_blank" title="サンプルソース"><strong>サンプルソース</strong></a><br />
<br />
<br />
＜これまでのLocalConnectionの物理制限＞<br />
<br />
* <strong>40KBの限界</strong><br />
（LocalConnectionを通して送られた通信量は<strong>40KB</strong>の限界だった。これ以上はランタイム・エラーを起こします）<br />
<br />
* <strong>片方向通信</strong><br />
（LocalConnectionを通したすべてのコミュニケーションが一方向だった）<br />
<br />
<br />
FlashLCS（LocalConnectionService）はそれらの制限を解決してくれます。<br />
こういうのはもっと実用的なサンプルを作ると使い道がはっきりしてきそうです。<br />
AIR同士の連携とかで威力を発揮するのかな～。<br />
<br />
Papervision3Dの人もサンプル作ってますYO。<br />
※このページを開いたままにしておくと、下記ページのFlashは機能しないのでご注意を。<br />
<a href="http://pv3d.org/2009/03/06/localserviceconnection-flashlcs-dem/" target="_blank" title="LocalServiceConnection (FlashLCS) demo">http://pv3d.org/2009/03/06/localserviceconnection-flashlcs-dem/</a><br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/296/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>FlashEff &#8211; 多彩な効果を演出するFlashコンポーネント -</title>
		<link>http://blog.alt-scape.com/archives/293</link>
		<comments>http://blog.alt-scape.com/archives/293#comments</comments>
		<pubDate>Wed, 25 Feb 2009 09:00:21 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[参考]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Flash CS4]]></category>
		<category><![CDATA[コンポーネント]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=293</guid>
		<description><![CDATA[



FlashEff
http://www.flasheff.com/

FlashEffというFlash CS3（CS4）用のAS3.0コンポーネントがあります。
「現在140以上のパターンが内臓されていて、アニメ [...]]]></description>
			<content:encoded><![CDATA[<p>
<img src="http://blog.alt-scape.com/img/flasheff1.jpg" alt="FlashEff" />
<br />
<br />
<strong>FlashEff</strong><br />
<a href="http://www.flasheff.com/" target="_blank" title="FlashEff">http://www.flasheff.com/</a><br />
<br />
FlashEffという<strong>Flash CS3</strong>（<strong>CS4</strong>）用の<strong>AS3.0コンポーネント</strong>があります。<br />
「現在140以上のパターンが内臓されていて、アニメーション/変遷/フィルタからボタン動作まで<br />
ActionScriptを意識しないで多彩な効果を与えることができます」<br />
とサイトに書いてあります。<br />
スクリプトとか全く触りたくない人にとっては便利ツールだけど<br />
まんま使うとなるとアレなんでカスタマイズ性に優れてるのかが気になります。<br />
アニメーション主体のメディアバナーの制作には<br />
複数パターン作って提出するときに重宝するかもしれませんね。<br />
気になった方は機能限定の<strong>フリー版</strong>があるので試しに使ってみてはいかがでしょうか。<br />
<br />
<span id="more-293"></span><br />
<strong>対応バージョン</strong><br />
IDE： Adobe Flash CS3、Adobe Flash CS4<br />
Action Script Version： AS3.0 only<br />
Flash Player Version： Flash Player 9, 10, +<br />
works： AIR、Stand Alone players<br />
<br />
<br />
<strong>料金体系</strong><br />
<img src="http://blog.alt-scape.com/img/flasheff2.jpg" alt="料金体系" />
<br />
月額約4000円！高ぇ～<br />
<br />
<br />
<strong>エフェクトショーケース</strong><br />
<a href="http://www.flasheff.com/patternsshowcase/" target="_blank" title="エフェクトショーケース">http://www.flasheff.com/patternsshowcase/</a><br />
※こちらで実際にエフェクトを試すことができます。<br />
<br />
<br />
<strong>使い方</strong><br />
<object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/PbBnDp4f42U&#038;hl=ja&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/PbBnDp4f42U&#038;hl=ja&#038;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object><br />
<br />
<br />
<strong>フリー版ダウンロード</strong><br />
<a href="http://www.flasheff.com/freedownload/" target="_blank" title="フリー版ダウンロード">http://www.flasheff.com/freedownload/</a><br />
<br />
<strong>フリー版と有料版の比較</strong><br />
<img src="http://blog.alt-scape.com/img/flasheff3.jpg" alt="フリー版と有料版の比較" />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/293/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>サイト上でFlashをつくることのできるサービス「wonderfl」</title>
		<link>http://blog.alt-scape.com/archives/259</link>
		<comments>http://blog.alt-scape.com/archives/259#comments</comments>
		<pubDate>Wed, 17 Dec 2008 17:49:27 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[WEBサイト]]></category>
		<category><![CDATA[AS3]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=259</guid>
		<description><![CDATA[



カヤックさんから鼻血モノのサービスが登場しました。

wonderfl
http://wonderfl.kayac.com/

これはサイト上のフォーム内にActionscript3.0のソースコードを書くと、
 [...]]]></description>
			<content:encoded><![CDATA[<p>
<img src="http://blog.alt-scape.com/img/wonderfl.jpg" border="0" width="550" height="310" />
<br />
<br />
カヤックさんから鼻血モノのサービスが登場しました。<br />
<br />
<strong>wonderfl</strong><br />
<a href="http://wonderfl.kayac.com/" target="_blank" title="wonderfl">http://wonderfl.kayac.com/</a><br />
<br />
これはサイト上のフォーム内に<strong>Actionscript3.0</strong>のソースコードを書くと、<br />
サーバーサイドで自動コンパイルして<br />
フォーム右側に書き出された<strong>swf</strong>を表示してくれるサービスです。<br />
<br />
・リアルタイムでプレビューしながらのトライ＆エラーもできちゃう<br />
・他人のコードをダウンロードしたり、覗き見しながら上達できる<br />
・ゼロから書くだけではなく、他人のコードを改変することも可能<br />
・書き出したswfを外部サイトへ貼り付けられる<br />
・はてなID、Yahoo!ID、livedoorID、mixiIDなどのOpenIDで簡単ログイン<br />
・ランキング機能で神が上位に（はてなスターのようなレーティングの仕組みがあるとうれしい）<br />
<br />
さっきログインしてみたらいきなり盛り上がってますね～。<br />
<br />
<span id="more-259"></span><br />
試しに以前エントリーした<strong>Frocessing</strong>のサンプルを書いたら見事にビルド成功！<br />
<strong>Spark Project</strong>のライブラリもインクルードできたのでこりゃいろいろ試す価値ありそうでふ。<br />
<iframe src="http://wonderfl.kayac.com/blogparts/380525b95a6200f3254fcc0e4b11975dcc87bbd2" width="484" height="490" style="border:1px black solid;"></iframe><br />
<br />
【追記】<br />
ヘルプに書いてありました。<br />
使用可能なライブラリは今のところは以下のみです。<br />
<strong>as3corelib</strong>, version: 0.92.1<br />
<strong>tweener</strong>, version: 1.31.74<br />
<strong>Progression</strong>, version 3.0.8<br />
<strong>Thread</strong>, version 1.0<br />
<strong>Frocessing</strong>, rev.2067@libspark(maybe)<br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/259/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>サーバーの時間をPHP+Flash（AS3）で取得する</title>
		<link>http://blog.alt-scape.com/archives/242</link>
		<comments>http://blog.alt-scape.com/archives/242#comments</comments>
		<pubDate>Tue, 09 Dec 2008 03:11:43 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[サンプル]]></category>
		<category><![CDATA[AS2]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[ソースコード]]></category>
		<category><![CDATA[時計]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=242</guid>
		<description><![CDATA[





仕事でちょこっとやったのでメモメモ。


以下、ソースコード。

ActionScript2の場合
var varsData:LoadVars = new LoadVars(); 
varsData.onLoad = function(success):Void
{  
    if (success)
    {
        test.text = 
        this.year + &#34;年&#34; +
        this.month + &#34;月&#34; +
     [...]]]></description>
			<content:encoded><![CDATA[<p>
<div id="so_clock"></div>
<script type="text/javascript">
<!--
	var so_clock = new SWFObject("http://blog.alt-scape.com/swf/clock/clock.swf", "clock", "550", "400", "9", "#ffffff");
	so_clock.addParam("wmode", "window");
	so_clock.addParam("allowFullScreen", "true");
	so_clock.addParam("menu", "false");
	so_clock.write("so_clock");
-->
</script>
<br />
仕事でちょこっとやったのでメモメモ。<br />
<br />
<span id="more-242"></span><br />
以下、ソースコード。<br />
<br />
<strong>ActionScript2</strong>の場合<br />
<pre class="code"><span class="keyword">var</span> varsData:LoadVars = <span class="keyword">new</span> LoadVars(); <br />
varsData.onLoad = <span class="keyword">function</span>(success):Void<br />
{  <br />
    <span class="keyword">if</span> (success)<br />
    {<br />
        test.text = <br />
        <span class="keyword">this</span>.year + <span class="str">&quot;年&quot;</span> +<br />
        <span class="keyword">this</span>.month + <span class="str">&quot;月&quot;</span> +<br />
        <span class="keyword">this</span>.day + <span class="str">&quot;日&quot;</span> +<br />
        <span class="keyword">this</span>.week +<br />
        <span class="keyword">this</span>.hour + <span class="str">&quot;時&quot;</span> +<br />
        <span class="keyword">this</span>.minutes + <span class="str">&quot;分&quot;</span> +<br />
        <span class="keyword">this</span>.seconds + <span class="str">&quot;秒&quot;</span>;<br />
    }<br />
};<br />
varsData.load(<span class="str">&quot;http://blog.alt-scape.com/swf/clock/clock.php&quot;</span>);</pre>
<br />
<br />
<strong>ActionScript3</strong>の場合<br />
Clock.as<br />
<pre class="code"><span class="keyword">package</span> <br />
{<br />
　<span class="keyword">import</span> flash.events.Event;<br />
　<span class="keyword">import</span> flash.events.EventDispatcher;<br />
　<span class="keyword">import</span> flash.net.URLLoader;<br />
　<span class="keyword">import</span> flash.net.URLLoaderDataFormat;<br />
　<span class="keyword">import</span> flash.net.URLRequest;<br />
　<span class="keyword">import</span> flash.net.URLRequestMethod;<br />
　<span class="keyword">import</span> flash.net.URLVariables;<br />
　<br />
　<span class="rem">/**<br />
　* Clock<br />
　* @alt<br />
　*/</span><br />
　<span class="keyword">public</span> <span class="keyword">class</span> Clock <span class="keyword">extends</span> EventDispatcher<br />
　{<br />
        <span class="rem">//</span><br />
        <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">const</span> COMPLETE:<span class="keyword">String</span> = <span class="str">&quot;GetClockComplete&quot;</span>;<br />
        <span class="keyword">private</span> <span class="keyword">var</span> _result:Object = <span class="keyword">new</span> Object();<br />
        <br />
        <span class="rem">//-------------------------</span><br />
        <span class="rem">// コンストラクタ</span><br />
        <span class="rem">//-------------------------</span><br />
        <span class="keyword">public</span> <span class="keyword">function</span> Clock(url:<span class="keyword">String</span> = <span class="keyword">null</span>)<br />
        {<br />
            <span class="keyword">if</span> (url) getClock(url);<br />
        }<br />
        <br />
        <span class="rem">//-------------------------</span><br />
        <span class="rem">// ロード</span><br />
        <span class="rem">//-------------------------</span><br />
        <span class="keyword">public</span> <span class="keyword">function</span> getClock(url:<span class="keyword">String</span>):<span class="keyword">void</span><br />
        {<br />
            <span class="keyword">var</span> urlRequest:URLRequest = <span class="keyword">new</span> URLRequest(url);<br />
            urlRequest.method = URLRequestMethod.GET;<br />
            <span class="keyword">var</span> urlLoader:URLLoader = <span class="keyword">new</span> URLLoader();<br />
            urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES;<br />
            urlLoader.addEventListener(Event.COMPLETE, completeHandler);<br />
            urlLoader.load(urlRequest);<br />
        }<br />
        <br />
        <span class="rem">//-------------------------</span><br />
        <span class="rem">// ロード完了</span><br />
        <span class="rem">//-------------------------</span><br />
        <span class="keyword">private</span> <span class="keyword">function</span> completeHandler(e:Event):<span class="keyword">void</span><br />
        {<br />
            <span class="keyword">var</span> urlVariables:URLVariables = <span class="keyword">new</span> URLVariables(e.target.data);<br />
            <span class="keyword">var</span> obj:Object = <span class="keyword">new</span> Object();<br />
            <span class="keyword">for</span> (<span class="keyword">var</span> i:<span class="keyword">String</span> <span class="keyword">in</span> urlVariables)<br />
            {<br />
                obj[i] = urlVariables[i];<br />
            }<br />
            _result = obj;<br />
            dispatchEvent(<span class="keyword">new</span> Event(COMPLETE));<br />
        }<br />
        <br />
        <span class="rem">//-------------------------</span><br />
        <span class="rem">// getter</span><br />
        <span class="rem">//-------------------------</span><br />
        <span class="keyword">public</span> <span class="keyword">function</span> <span class="keyword">get</span> result():Object<br />
        {<br />
            <span class="keyword">return</span> _result;<br />
        }<br />
　}<br />
}<br />
</pre>
<br />
PHP（clock.php）は<br />
<pre class="code"><span class="tag">&lt;?php</span><br />
<br />
<span class="variable">$year</span> = date(<span class="str">&quot;Y&quot;</span>); <span class="rem">//年（4ケタ）</span><br />
<span class="variable">$month</span> = date(<span class="str">&quot;n&quot;</span>); <span class="rem">//月（1ケタ）</span><br />
<span class="variable">$day</span> = date(<span class="str">&quot;j&quot;</span>); <span class="rem">//日（1ケタ）</span><br />
<span class="variable">$week</span> = date(<span class="str">&quot;w&quot;</span>); <span class="rem">//曜日（0～6）</span><br />
<br />
<span class="variable">$hour</span> = date(<span class="str">&quot;G&quot;</span>); <span class="rem">//24時間表記</span><br />
<span class="variable">$minutes</span> = date(<span class="str">&quot;i&quot;</span>); <span class="rem">//分（2ケタ）</span><br />
<span class="variable">$seconds</span> = date(<span class="str">&quot;s&quot;</span>); <span class="rem">//秒（2ケタ）</span><br />
<br />
<br />
<span class="keyword">switch</span> (<span class="variable">$week</span>) {<br />
    <span class="keyword">case</span> <span class="num">0</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;日曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">case</span> <span class="num">1</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;月曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">case</span> <span class="num">2</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;火曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">case</span> <span class="num">3</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;水曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">case</span> <span class="num">4</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;木曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">case</span> <span class="num">5</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;金曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">case</span> <span class="num">6</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;土曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">default</span>:<br />
        <span class="keyword">break</span>;<br />
}<br />
<br />
<span class="rem">//出力</span><br />
<span class="keyword">echo</span> <span class="str">&quot;year=&quot;</span>.<span class="variable">$year</span>.<span class="str">&quot;&amp;month=&quot;</span>.<span class="variable">$month</span>.<span class="str">&quot;&amp;day=&quot;</span>.<span class="variable">$day</span>.<span class="str">&quot;&amp;week=&quot;</span>.<span class="variable">$week</span>.<span class="str">&quot;&amp;hour=&quot;</span>.<span class="variable">$hour</span>.<span class="str">&quot;&amp;minutes=&quot;</span>.<span class="variable">$minutes</span>.<span class="str">&quot;&amp;seconds=&quot;</span>.<span class="variable">$seconds</span>;<br />
<br />
<span class="tag">?&gt;</span></pre></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/242/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FlashでTwitterの発言を取得してみる</title>
		<link>http://blog.alt-scape.com/archives/234</link>
		<comments>http://blog.alt-scape.com/archives/234#comments</comments>
		<pubDate>Mon, 01 Dec 2008 06:56:15 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[サンプル]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[マッシュアップ]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=234</guid>
		<description><![CDATA[


世界最大のつぶやき共有サービス「Twitter」での発言を取得してみるテスト。
APIが公開されているのですが、
今回はTwitterユーザー全員の発言情報を5秒おきに最新10件表示するというものを作ってみました。 [...]]]></description>
			<content:encoded><![CDATA[<p>
<a rel="shadowbox;width=800;height=600" class="option" title="twitter1" href="http://blog.alt-scape.com/swf/twitter1.swf"><img src="http://blog.alt-scape.com/img/twitter1.jpg" border="0" width="550" height="338" /></a><br />
<br />
世界最大のつぶやき共有サービス「<a href="http://twitter.com/" target="_blank" title="Twitter"><strong>Twitter</strong></a>」での発言を取得してみるテスト。<br />
APIが公開されているのですが、<br />
今回はTwitterユーザー全員の発言情報を5秒おきに最新10件表示するというものを作ってみました。<br />
読み込みのフォーマットは<strong>XML</strong>、<strong>JSON</strong>、<strong>RSS</strong>、<strong>Atom</strong>のフォーマットで情報を使うことができます。<br />
今回はXMLで読み込みます。以下、API仕様をざっくりと書きました。<br />
<br />
<span id="more-234"></span><br />
<strong>Twitterユーザー全員の発言情報</strong>（最新20件）<br />
http://twitter.com/statuses/public_timeline.xml<br />
<br />
<strong>友達の発言情報</strong>（最新20件）<br />
http://twitter.com/statuses/friends_timeline/自分のユーザーネーム か IDナンバー.xml<br />
<br />
<strong>自分の発言情報</strong>（最新20件）<br />
http://twitter.com/statuses/user_timeline/自分のユーザーネーム か IDナンバー.xml<br />
<br />
<strong>自分の友達のリスト情報</strong><br />
http://twitter.com/statuses/friends/自分のユーザーネーム か IDナンバー.xml<br />
<br />
<strong>followしてくれているユーザーリスト情報</strong><br />
http://twitter.com/statuses/followers/自分のユーザーネーム か IDナンバー.xml<br />
<br />
<br />
Twitterもクロスドメインポリシーの関係でFlashからはAPIに接続できないのでPHP経由で取得してきます。<br />
<a href="http://yoppa.org/blog/366.html" target="_blank" title="Flash(AS3)でcrossdomain.xml無しにクロスドメインにアクセスする">こちら</a> のPHPソースを参考にして<br />
<pre class="code"><span class="keyword">var</span> xmlURL:<span class="keyword">String</span> = <span class="str">&quot;crossdomain-proxy.php?url=http://twitter.com/statuses/public_timeline.xml&quot;</span>;<br />
xmlLoader = <span class="keyword">new</span> URLLoader();<br />
xmlLoader.load(<span class="keyword">new</span> URLRequest(xmlURL));</pre>
<br />
のように取得すればＯＫです。<br />
<br />
<br />
【2009/9/15追記】<br />
<a href="http://blog.alt-scape.com/fla/twitter_sample.zip">ソース</a>をアップしました。<br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/234/feed</wfw:commentRss>
		<slash:comments>35</slash:comments>
		</item>
	</channel>
</rss>

