トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     SharedObjectでdataにattributeNameの追加ができない
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
rin-ko
Åê¹ÆNo.42372
投稿日時: 2009-5-20 20:43
職人
居住地: 東京
投稿: 397
使用環境:
MacOSX10.5/10.4
WinXP SP3
MX2004Pro/CS3
SharedObjectでdataにattributeNameの追加ができない
お世話になっております。
久々にFlashを触ったのですが、表題の件にぶつかり、ちょっと不思議でもやもやしております。すごく困るとか致命的な問題というわけではないのですが、気になったので理由などを知りたく思い投稿してみました。

問題は、SharedObjectの記憶領域の使用量を「制限しない」にしていても、使用量が64?70kb前後あたり?をこえるとdataに追加属性の書き込みができなくなるというものです。
flush()の結果はtrueが返るのですが、追記した属性の参照はできず、ファイルサイズも増えません。
どうも限界を超えた?時点で、それ以前の内容が消えてしまうようです。使用量が約64kbの時に、1?2kbほどの追加をしたら、次には約1kbになり最初に書き込んだ属性以外の内容(場合によっては最初の書き込みと最後に追記した内容)以外は消失してしまいました(それまでは順調に追記できていました)。
ただし、最初に定義した属性であれば、その内容量が増えても問題は起きないようです(限界まで試したわけではないので断言はできませんが)。

例)最初にmy_so.data.mydataAを保存したら、使用量が70kb近くあると、my_so.data.mydataBなど、別の要素を追加保存できない。しかしpendingやfalseのエラーは返らない。trueが返る。
厳密には、my_so.flush()するとtrueが返り、直後のmy_so.getSize()では使用量は追記した分だけ増えているのだが、直後にあらためてmy_so=SharedObject.getLocal(_str)すると、使用量は減っている。
ただし、my_so.data.mydata1に対して、その内容が増加する(mydata1=[0,1]が、mydata1=[0,1,2,3]になるなど)場合は問題ない。

プレビュー及びプロジェクターでは問題はおきませんでした。さらに、FlashPlayerが9くらいの時には、問題を認識することはありませんでした。
もしかしてセキュリティ上の理由などで仕様が変わったのでしょうか?

検証はMacOSX10.5.6、Flash CS3、AS2.0、swfの書き出しはバージョンFlashPlayer9で、FlashPlayer10,0,22,87でFirefoxとSafariにて行いました。
永井勝則
Åê¹ÆNo.42382
投稿日時: 2009-5-21 14:29
職人
居住地: 白馬村
投稿: 796
使用環境:
Windows 7 :Flash CS4:
10.6.8 :Flash CS5.5
Re: SharedObjectでdataにattributeNameの追加ができない
”たぶん”ですが(自分で確認したわけではなく、検索しただけ)、
以下のバグレポートがあり、09/4/17現在でもまだ文句を言っている人がいるので、Flash Playerのバグなのではないでしょうか。


Local SharedObject data size limited to 64KB in Flash Player 10

と書き込んで[プレビュー]ボタンを押すと、赤字の注意書きが出たのでびっくりした。


----------------
永井勝則:
himco.jp :

rin-ko
Åê¹ÆNo.42384
投稿日時: 2009-5-21 21:03
職人
居住地: 東京
投稿: 397
使用環境:
MacOSX10.5/10.4
WinXP SP3
MX2004Pro/CS3
Re: SharedObjectでdataにattributeNameの追加ができない
調べて下さってありがとうございます。
なんと、バグでしたか……。
ざっと検索しただけですが、日本語サイトではなかなか話題を見つけられなかったので、結構あたりまえの仕様なのかと思っていました。
これって、場合によっては保存データが飛ぶというかなり深刻な問題だとも思うのですが、バグ報告なさった方も書いているように、64kb以上の保存という状況があまりないために遭遇しにくいのかもしれませんね。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops