« flashlite2.0での文字化け回避 | メイン | バンドアパート »

2008年7月27日

●flashlite2.0でのSharedObject

flashlite2からSharedObjectが使えるようになっていたのは知っていたが、
全く手を出していなかった。
ようやく、そこにふれる機会を得て、作ってみたはいいが、全然PCでの作り方と勝手が違って大きな壁にぶち当たった。

具体的にどう違うかというと、
リスナーオブジェクトの設定とかが必要。
こちらを参照

また、最新の端末では起こらないかもしれないが、flashlite2.0対応初期の端末では、
SharedObjectが読み込まれるまでのタイムラグがあるので、
最初のフレームでSharedObjectを呼び出した後、5-10フレームあけて、
読み込み完了のスクリプトを記述してやる必要がある。

例として
1フレーム目でSharedObjectを呼び出す。

SaveData = SharedObject.getLocal("SaveData ");

その後5-10フレームあけて下記を記述

//データ読み込み完了時のファンクション
function loadCompleteSaveData (SaveData:SharedObject) {
if (0 == SaveData.getSize() ){
// サイズが 0 の場合、データを初期化
SaveData = "";
}else{
// SaveDataのすべてのデータを確認のためトレースする
trace( "SaveData " );
for (var idx in SaveData.data) {
trace( " " + idx +": " + SaveData.data[idx] );
}
}
}

//リスナー設定をしファンクションを実行させる。
SharedObject.addListener( "SaveData", loadCompleteSaveData );

これで、うまく動いた。(検証機:MEDIASKIN)

トラックバックURL

このエントリーのトラックバックURL:
http://www.browncrown.net/blog2/mt-tb.cgi/90

コメントする

(初めてのコメントの時は、コメントが表示されるためにこのブログのオーナーの承認が必要になることがあります。承認されるまでコメントは表示されませんのでしばらくお待ちください)