2

SharedObject を .AS ファイルに追加する際に問題が発生したため、.flv ファイルに「username_myfile」のような赤い 5 でユーザー名を追加しようとしています。クラス。SharedObject を .AS ファイルに追加する適切な方法はありますか?

- 追加した:

import flash.net.SharedObject;

package app
{
    import flash.display.BitmapData;
    import flash.display.Stage;
    import flash.external.ExternalInterface;
    **import flash.net.SharedObject;**

    public class DataHolder
    {
        private static var dataHolder:DataHolder;


        public var savedstuff:SharedObject = SharedObject.getLocal("myStuff2","/");

        if (savedstuff.size > 0)
        {
            public var username = savedstuff.data.username;

        }

             public var filename:String = (String(username) + "_myfile");

        public var rtmpPath:String = "rtmp://numbershere.compute-1.amazonaws.com/oflaDemo/";



        public var recorder:Recorder;
        public var navigation:Navigation;

        public var cameraFPS:Number = 30;
        public var cameraWidth:Number = 640;
        public var cameraHeight:Number = 480;
        public var cameraQuality:Number = 88;// camera quality

        public var timelimit:Number = 25;// limit count of seconds

        public var stage:Stage;

        public function DataHolder()
        {
            if (dataHolder)
            {
                throw new Error("Only one DataHolder instance should be instantiated");
            }
        }

        public static function getInstance():DataHolder
        {
            if (dataHolder == null)
            {
                dataHolder = new DataHolder();
            }
            return dataHolder;
        }
    }
}
4

1 に答える 1

1

共有オブジェクトの条件付き宣言を削除し、通常どおり宣言します。つまり、次のようにします。

private var savedStuff:SharedObject;

次に、コンストラクターで次のようにします。

try {
    savedStuff = SharedObject.getLocal("savedData");
} catch (error) {
    cookiesActive = false;
};

次に、cookiesActive==true をチェックして、SharedObject にデータを保存します。

if (cookiesActive) {
    savedStuff.data.levelsFinished = 1;
}
于 2013-06-27T09:59:49.583 に答える