Adobe Labsにある、ActionScript 3.0 Libraries で公開されているYouTubeのAPIを使ってみました。
まずはYouTubeのアカウントが必要とのことなのでこちらのページを参考にアカウントをとって、作成開始です。
Flex Builder 2で新規にプロジェクトを作成して、ActionScript 3.0 Libraries にあるcorelibと YouTubeをダウンロードしてswcをライブラリパスにつなげます。
(プロジェクトを右クリック ->Properties-> Flex Build Path -> Library Path-> Add SWC..で追加しました。)
- corelib.swc
- youtube.swc
その後mxml内でYoutubeServiceを使ってみたところ、イベントハンドラの設定でコンパイラにエラーを指摘されてしまいました。
まず最初に以下のように簡単なmxmlを書きます。
なにも考えずにmxmlにscriptもなにもかも含めていますがお試しということで。^^;
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
xmlns:ut="com.adobe.webapis.youtube.*">
<mx:Script>
<![CDATA[
import com.adobe.webapis.youtube.events.YouTubeServiceEvent;
import com.adobe.webapis.youtube.methodgroups.MethodGroupHelper;
import mx.utils.ObjectUtil;
[ArrayElementType("com.adobe.webapis.youtube.Video")]
public var videoList:Array;
public function onListByTag(event:YouTubeServiceEvent) : void{
ta.text=ObjectUtil.toString(event.data);
}
public function doSearchByTag():void{
service.videos.listByTag("Melody.");
}
]]>
</mx:Script>
<mx:TextArea id="ta" width="399" height="261" y="65" x="43" />
<mx:Button id="bt1" click="doSearchByTag()" x="43" y="35" label="getListByTag"/>
<ut:YouTubeService apiKey="<自分のキー>" id="service" onListByTag="onListByTag(event)" />
</mx:Application>
まずは手始めにタグで検索するAPIであるlistByTagを使ってみました。
mxmlタグを利用してYouTubeServiceの定義します。
そのタグの属性である、onListByTagでYouTubeServiceEventを引数にすると
エラーしてしまいました。
subversionからdownloadしたソースをみてみると、(subversionでなくてもソースはダウンロードできます。)
[Event(name="onListByTag", type="com.adobe.webapis.youtube.events.YouTubeServicetEvent")]
とありました。(>_<)
YouTubeServicetEventって tがひとつ多くないですかね...
APIドキュメントになるであろうコメントも
@eventType com.adobe.webapis.youtube.events.YouTubeServicetEvent.VIDEOS_LIST_BY_TAG
になっています。
その他のonListByTag以外のEventもきっちり"t"がついています。
youtube.swcをライブラリパスから外して、ソースコードをプロジェクトにコピーした後YouTubeServiceventに変更したら無事コンパイルが通るようになりました。
youtubeのライブラリに対するフィードバックはどこにすればいいのでしょう?
もう少し使った上で、作者さんにメールするか(英語..)か
フィードバックの口を探して聞いてみる事にしたいと思います。
http://www.flex.orgかな..http://danieldura.com/かな..
ActionScript 3:resources:apis:libraries
ActionScript 3のYouTube用API. これを利用してみました。
http://labs.adobe.com/wiki/index.php/ActionScript_3:resources:apis:libraries#YouTube
YouTube APIとFLASHの連携 : VideoJam
Flashを使って連携している例です。
http://casualplay.net/blog/2006/04/youtube_apiflash_videojam.html
試験管のなかのコード :: YouTube API にチャレンジ
http://www.in-vitro.jp/blog/index.cgi/WebService/20060619_01.html
.fla?Idea of Flash Creationという本にもFlashで連携させている例がありました。
http://www.amazon.co.jp/exec/obidos/ASIN/4872835905/
Flex2.0で作られたYouTube player(nod::ぶろぐ::RIA::Flash/Flex/Ajax)
以前のエントリです。
http://www.noridon.net/weblogs/archives/2006/03/flex20youtube_p.html
この記事に対するコメント