Flashでのスクリーンセーバーの設計

スクリーンセーバのコンテンツ自体の開発はFlashアニメーションやWebアプリケーションと同じように行います。STFクラスを用いてそれぞれのOSのローカル環境との連携などを行う場合はコンポーネントの配置と実現したい機能に応じてメソッドの記述が必要となります。

Screentimeコンポーネントを使用したコンテンツの実装

※コンテンツの内容が純粋な"ムービー"、もしくはコンテンツ内で処理が完結するActionScriptのみの場合、以降に説明される開発は不要です。
SWFファイルをコンパイラからパブリッシュするだけでコンテンツの開発が可能です。


ScreentimeコンパイラのUI上から設定できる項目の他にコンテンツに機能を実装する場合にはSTFメソッドのコード記述とScreentimeコンポーネントを使用する必要があります。このコンポーネントは、[コンポーネント]パネルの[ScreenTime]フォルダにあります。 まずコンポーネントをドラッグして、ムービーの先頭フレームに配置します。FlaにScreentimeのアイコンが表示され、出力ウィンドウに[initializing ScreenTime component:]と表示されればそのプロジェクトでのSTFクラスの利用が可能となります。コンポーネントにインスタンス名を設定し、_visibleプロパティをfalseに設定してコンポーネントがスクリーンセーバ上に表示されないようにします。ムービーの先頭フレームはコンポーネントの初期化処理が行われますので、その他のコンテンツの機能や処理は2フレーム目以降に記述するようにしてください。この値は、登録されたコールバックのパラメータとして返されます。コード記述の具体例については、以下の例またはSTF.registerCallBack()を参照してください。

非同期コマンドモデル

スクリーンタイムのメソッドは非同期に実行されますので、戻り値をすぐに使用することはできず、コールバックイベントを使用してアクセスする必要があります。戻り値を使用するには、STFファンクションの結果のデータ型と一致する引数を持つコールバックファンクションを登録します。このファンクションは、コマンドの終了時にスクリーンタイムから呼び出され、コマンドの結果を渡されます。

コードの記述例

次の例は、非同期コマンドモデルの動作を示す次のサンプルでは、GUID(-グローバルユーザID)を取得しています

var userID:String;
onGetUserGUIDReturn = function(returnValue:String) {  // コールバックを定義する
	userID = returnValue;
}
STF.registerCallBack("getUserGUID", onGetUserGUIDReturn, this);   
// コールバックファンクションを登録する
STF.getUserGUID();

関連項目

STF.trace() STF.enableAutoTrace()

ページトップへ戻る