2013-06-26 99 views
2

在向.AS文件添加SharedObject时遇到困难,我试图将用户名添加到.flv文件中,名称为“username_myfile”,红色为5我不确定我是否将代码保存在正确部分的类。有没有一种将SharedObject添加到.AS文件的正确方法?将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; 
     } 
    } 
} 
+0

@RobertHarvey谢谢! – shelfish

+0

你的代码看起来很奇怪。 if语句直接在类定义中?甚至是什么问题?它是否编译? –

+0

我添加了这个,现在得到更少的错误** import flash.net.SharedObject; ** – shelfish

回答

1

删除您的共享对象的申报条件,并宣布往常一样,即:

private var savedStuff:SharedObject; 

然后,在你的构造函数:

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

然后检查cookiesActive ==真实的数据保存到共享对象,例如:

if (cookiesActive) { 
    savedStuff.data.levelsFinished = 1; 
} 
+0

@ moosefetcher-对不起,我不能让你的代码工作。 – shelfish

+0

你有没有尝试删除共享对象导入周围的'**'星星?它应该正常导入(就像任何其他必需的类一样)。我也应该指出,你需要声明布尔变量'cookiesActive',即; 'private var cookiesActive:Boolean'。你会得到什么错误?代码不起作用? – moosefetcher

相关问题