とくながです。
個人的に非常に期待していたFlash for iPhoneですが、
「
iPhone向けFlashアプリ変換ツールへの投資中止」という
なんとも残念な結果になってしまいました。
iPhoneアプリはこれからも大きくシェアを広げていくと考えていて、
もちろん弊社でも水面下でプロジェクトが進行中なのですが、
FlashでiPhoneアプリを作る!という方法が実現できず残念に思います。
そんなわけで前回、
SharedObjectで楽々データ保存という
エントリーを書かせて頂きましたが、ここで保存されている変数を、
実際に確認したり編集することができる方法をご紹介します。
※前回ご紹介したアクセスカウンター
SharedObjectのデータを書き換えると...
SharedObjectはFlash版Cookieとも呼ばれているとおり、
ユーザーのローカルに変数などのデータを格納することができます。
しかし、正確な値が格納されているかを調べたり、
値を変えてサクッと動作テストをする機能が標準にはありません。
格納されてる値をtrueからfalseに変えて動作テストをする時など、
わざわざFlash上で値を変えて保存させて、では効率が悪すぎます。
そこで、ローカル上に保存されている値を直接参照・書き換えてしまい、
Flash側での保存機能は利用せずに、好きな値を送ってしまいましょう。
あまり実例を見かけたことはないですが、特にFlashゲームなどでは
不正行為をすることも可能だったりしますので、悪用は厳禁ですよ。
SharedObjectで保存したデータ(solファイル)の格納場所
SharedObjectで保存したデータは、下記に格納されています(Windows)
C:\Documents and Settings\ユーザ名\Application
Data\Macromedia\Flash Player\#SharedObjects
中にIDのようなディレクトリが入っていると思いますが、
その中に、solファイルが各ドメインごとに分かれて格納されています。
たとえば、labs.cybridge.jpディレクトリの中を覗くと、
「lab20100226.sol」というファイル名が見つかるかと思います。

.sol Editorでローカル変数を操作
データを保存場所が分かったら、早速情報を書き換えてみましょう。
今回使用するのは海外製の
.sol Editorというソフトウェアです。
インストールした後、さっきのsolファイルを開いてみてください。
counterという変数の中に、アクセスした数が保存されています。
ここの数値をたとえば100とかに変えてしまうと、あら不思議!
シカータ君が間違って101回目とカウントしてしまうようです。
▼カウンターが101回目になりました!

アクセスカウンタ程度なら何の問題もありませんが、
特にゲームなどでSharedObjectを使っている方はご用心。
不正行為対策にもなりますので、ご活用されては如何でしょうか。