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

パスワード:


パスワード紛失

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

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
rin-ko
Åê¹ÆNo.42372
投稿日時: 2009-5-20 20:43
職人
居住地: 東京
投稿: 397
使用環境:
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にて行いました。
フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
 » SharedObjectでdataにattributeNameの追加ができない rin-ko 2009-5-20 20:43
     Re: SharedObjectでdataにattributeNameの追加ができない knagai 2009-5-21 14:29
       Re: SharedObjectでdataにattributeNameの追加ができない rin-ko 2009-5-21 21:03

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