AS3備忘録: 設定用のXMLファイルへのパスをflashvarsで指定する
この記事は賞味期限切れです。(更新から1年が経過しています)
先日取引先から、納品したFlashについて問い合わせがありまして、
「設定用のXMLファイルの場所をswfと一緒に移動したら動かなくなった」とのこと。
XMLファイルへのパスをスタティックに指定してしまうと、
こういう事態に対処出来なくなり、メンテナンス性を欠くのでは?
という事でflashvarsでXMLファイルへのパスを渡す方式にして解決しました。
こんな感じでflashvarsは渡してあげます。
<param name="flashvars" value="xmlpath=/the/path/to/" />
AS3で受け取ります。
public class Main extends MovieClip{
public function Main() {
var xmlpath = loaderInfo.parameters["xmlpath"];
var ul:URLLoader = new URLLoader;
ul.addEventListener(Event.COMPLETE, onXmlLoaded);
ul.load( new URLRequest( xmlpath + "config.xml" ) );
}
private function onXmlLoaded(e:Event):void{
// do something
}
}
モノによってはそうすべきではないケースもあるかもしれませんが、
お客さんが直接手作業で更新するようなローテーションバナー等は
こういう仕様にしてあげたほうが安心ですね。
コメント