Loading SWFs: Classes do not match

I've written an AIR app which loads coompiled SWFs and manipulates them.  The problem I've run into is that I cannot access the custom objects in the SWF because their class definition does not match the class definition in the AIR app.
I have a library project that I develop all the classes in.
The SWFs are published from Flash using the Source Path of this library, and the AIR app has the library project listed in its Build Path Libraries in FB 4.5.
Example:  vManager is a ViewManager, a custom class used in the SWF to do various things.  It is accessible to the AIR runtime, but the AIR runtime thinks it's some other class that doesn't exist anymore:
From the AIR runtime:
trace(describeType(contentMC.vManager).toXMLString());
<type name="gdit.controls::ViewManager" base="Object" isDynamic="false" isFinal="false" isStatic="false">
  <extendsClass type="Object"/>
  <constructor>
    <parameter index="1" type="flash.display::DisplayObjectContainer" optional="false"/>
  </constructor>
  <accessor name="state" access="writeonly" type="gdit.controls::ViewStateButton" declaredBy="gdit.controls::ViewManager"/>
  <accessor name="directiveText" access="writeonly" type="gdit.controls::IndexedTextField" declaredBy="gdit.controls::ViewManager"/>
  <accessor name="states" access="readonly" type="__AS3__.vec::Vector.&lt;gdit.controls::ViewStateButton>" declaredBy="gdit.controls::ViewManager"/>
  <method name="addViewState" declaredBy="gdit.controls::ViewManager" returnType="void">
    <parameter index="1" type="flash.display::Sprite" optional="false"/>
    <parameter index="2" type="Array" optional="false"/>
  </method>
  <method name="setDefaultViewState" declaredBy="gdit.controls::ViewManager" returnType="void">
    <parameter index="1" type="Array" optional="false"/>
  </method>
</type>
From the SWF:
trace(describeType(vManager).toXMLString());
<type name="gdit.controls::ViewManager" base="Object" isDynamic="false" isFinal="false" isStatic="false">
  <extendsClass type="Object"/>
  <constructor>
    <parameter index="1" type="flash.display::DisplayObjectContainer" optional="false"/>
  </constructor>
  <variable name="defState" type="String">
    <metadata name="__go_to_definition_help">
      <arg key="file" value="G:\Flash\ASLib\src\gdit\controls\ViewManager.as"/>
      <arg key="pos" value="527"/>
    </metadata>
  </variable>
  <accessor name="state" access="readwrite" type="gdit.controls::ViewStateButton" declaredBy="gdit.controls::ViewManager">
    <metadata name="__go_to_definition_help">
      <arg key="file" value="G:\Flash\ASLib\src\gdit\controls\ViewManager.as"/>
      <arg key="pos" value="2302"/>
    </metadata>
    <metadata name="__go_to_definition_help">
      <arg key="file" value="G:\Flash\ASLib\src\gdit\controls\ViewManager.as"/>
      <arg key="pos" value="2378"/>
    </metadata>
  </accessor>
  <accessor name="defaultState" access="readonly" type="__AS3__.vec::Vector.&lt;flash.display::DisplayObject>" declaredBy="gdit.controls::ViewManager">
    <metadata name="__go_to_definition_help">
      <arg key="file" value="G:\Flash\ASLib\src\gdit\controls\ViewManager.as"/>
      <arg key="pos" value="577"/>
    </metadata>
  </accessor>
  <accessor name="states" access="readonly" type="__AS3__.vec::Vector.&lt;gdit.controls::ViewStateButton>" declaredBy="gdit.controls::ViewManager">
    <metadata name="__go_to_definition_help">
      <arg key="file" value="G:\Flash\ASLib\src\gdit\controls\ViewManager.as"/>
      <arg key="pos" value="694"/>
    </metadata>
  </accessor>
  <accessor name="directiveText" access="writeonly" type="gdit.controls::IndexedTextField" declaredBy="gdit.controls::ViewManager">
    <metadata name="__go_to_definition_help">
      <arg key="file" value="G:\Flash\ASLib\src\gdit\controls\ViewManager.as"/>
      <arg key="pos" value="3075"/>
    </metadata>
  </accessor>
  <method name="addViewState" declaredBy="gdit.controls::ViewManager" returnType="void">
    <parameter index="1" type="flash.display::Sprite" optional="false"/>
    <parameter index="2" type="Array" optional="false"/>
    <metadata name="__go_to_definition_help">
      <arg key="file" value="G:\Flash\ASLib\src\gdit\controls\ViewManager.as"/>
      <arg key="pos" value="1220"/>
    </metadata>
  </method>
  <method name="setDefaultViewState" declaredBy="gdit.controls::ViewManager" returnType="void">
    <parameter index="1" type="Array" optional="false"/>
    <metadata name="__go_to_definition_help">
      <arg key="file" value="G:\Flash\ASLib\src\gdit\controls\ViewManager.as"/>
      <arg key="pos" value="1577"/>
    </metadata>
  </method>
  <metadata name="__go_to_ctor_definition_help">
    <arg key="file" value="G:\Flash\ASLib\src\gdit\controls\ViewManager.as"/>
    <arg key="pos" value="793"/>
  </metadata>
  <metadata name="__go_to_definition_help">
    <arg key="file" value="G:\Flash\ASLib\src\gdit\controls\ViewManager.as"/>
    <arg key="pos" value="193"/>
  </metadata>
</type>
Both of these statements trace in  the AIR runtime.  Note that the SWF class is much larger:  this is because the AIR version is referencing a class definition that is roughly 4 versions old.
I've tried wiping out the class def after publishing the SWF, and the AIR app still refers neither the current version of the class in the Library project, nor the version compiled in the SWF. 
There are no errors or warnings in the Lib project, the main AIR project, or the SWF.  I've tried cleaning both projects, referencing the SWC directly, nothing seems to correct this issue.
Maybe I'm integrating the library project incorrectly in FB?  I don't know, but if anyone does:  please let me know!
Thanks

Thanks for your response.
I am still not clear. Print method is a implementation of the pageable interface why does PrintBlank implement Printable. what shows the print method is a implimentation of method of pageables Is the Print method part of class PrintBlank . I see that it is outside of the brackets of PrintBlank .
also is the order of process class PrintBlank calls PrintJob's print method this does not take any paramters.
PrintJob then calls Pageable's print method which sends the parameters Graphics g, PageFormat format and int pageIndex.
Thanks

Similar Messages

  • Error : the class does not match the class of the persisted object

    Hi I am new to Java.. I got an exception "the class does not match the class of the persisted object for cl = java.util.Vector : __SUID = -2767605614048989439, getSUID(cl) = 1".. What it implies? I got Serialized stream and Object from Web Server.. How to resolve this Exception? I nead to Deserialize this stream...

    ArulPrabhu wrote:
    Friend... I agree with u... Every thing Ok... I am not having the option to make change on the server side... I call a webrequest for the URI - "http://www.nseindia.com/chartdata?mkttype=N&series=EQ&symbol=RPOWER&charttype=ONLINE_STOCK".. From that i got response as Serialized Object Stream... Which is the data made available to all through their applet "Chart".. But i need it for my Custom Project.. I know the Structure of class they have serialized... Is their any chance to parce Data from that Stream..
    Three words.
    You are doomed.
    Whatever you end up doing will not be serialization. It will be reverse engineering of a old (dead) format that could go all pear shaped on you when you least expect it. One of the worst problems in using a solution where you reverse engineer, try and guess hackery your way through a proprietary semi (or totally) undocumented format is that it is really impossible to test your code with any degree of certainty. Does your code actually work? Or does it only work because you haven't seen some totally unexpected (but legal for the format) format yet?
    Get the producer to produce XML instead of "serialized" data. This is a much better route for you to go down.
    If you decide to keep on your path then grab a DataInputStream and go somewhere else because you'll have to figure out the format of another languages serialized data on a place that isn't this site.

  • Unloading loaded SWF classes

    This is a fairly complicated issue so I'll try to explain it as best I can.
    The first part is that I am downloading a SWF from a server that has a bunch of exported images in it. I am doing a lookup of the class names for these images then using that to load the data into the application. Later on down the line it is possible to download a separate SWF that has images in the same format with overlapping names.
    The issue here is that when loading the second SWF with duplicate names it doesn't overwrite the data as one might expect, it uses whatever was loaded first. So I need to know if it's possible to either make it overwrite the classes with the new data or throw them away before loading the new SWF so the old ones don't get in the way. Is this possible at all? If not I suppose we could change the name of all of the assets so they are guaranteed to be unique but that would be a massive headache that I want to avoid at all costs.

    I have my ways I'm Just looking up all of the available classes in the SWF and then getting the class data out of it and using that to load the images into the app.
    EDIT: I sort of see what the problem is. The SWF files are being loaded into the same application domain so I assume that somehow limits loading multiple classes with the same name. So maybe I have to load each SWF into a new ApplicationDomain instead of using the main apps domain?

  • Methods in SSOEnablerUtil class does not match the sample code

    Hi,
    Please refer to the sample code at:
    http://otn.oracle.com/sample_code/products/iportal/htdocs/sso/ssoover.html
    This mentions that the bakeAppCookie() and unbakeAppCookie() are methods in the SSOEnablerUtil class. I have downloaded iAS 9.0.2 from OTN.
    The SSOEnablerUtil class does not have the above mentioned methods. Are these methods similar to the encryptCookie() and decryptCookie() methods in the SSOEnabler class?
    Please do let me know.
    Thanks,
    Rashmi.

    This was a part of the old package.

  • Layer-7 Class-maps: 'not' match-any

    Hallo All,
    I'm wondering if the following logic is possible on the ACEs.
    First Match is:
    class-map type http loadbalance match-any CM7-MatchSrcIP
       10 match source-address 192.168.0.0 255.255.0.0
       20 match source-address 172.16.0.0 255.255.0.0
    class-map type http loadbalance match-any CM7-URLs
       10 match http url /testing.*
    class-map type http loadbalance match-all CM7-WWW
       10 match class-map CM7-MatchSrcIP
       20 match class-map CM7-URLs
    If the above URL and IP sources are matched, I want to send to a specific SF. (easy enough)
    If the URL matches /testing.* but source IP address doesn't match of any of the above subnets, I want to redirect to a 'restricted' page. (ummm)
    If the URL is something else (e.g. /temporary.*) with any IP source address, I want it to be load-balanced by a different SF (say like in a class-default)
    Thx in adv
    David

    Hi David,
    Sure you can try this on the ACE, you already created most of the configuration so now just need to apply the maps under the first-match policy.
    According to your description this is how this policy should look like:
    policy-map type loadbalance first-match SLB_LOGIC
      class CM7-WWW
        serverfarm Testing
      class CM7-URLs
        serverfarm Restricted
      class class-default
        serverfarm Any
    - ACE checks for testing plus IP address matching.
    - If user belongs to any other subnet then SF restricted is used.
    - If none of the above statements is matched then defaul class map and SF is used.
    Cheers!
    Pablo

  • Loaded swf with button , not communicating to main timeline

    my main stage/timeline has a UILoader "UILoaderOne" and
    another one "UIloaderTwo".
    i have some buttons on the main stage which pull up some
    images into the UILoaderOne.
    these work fine and look like this.
    //BEGIN BUTTONCODE\\
    //button to load image into loader "loaderOne" x01_btn and
    x01_ldr, thumb image is "x01.jpg and main image is p01.jpg\\
    //crop thumb image to size 50px tall by whatever wide and
    resize loaderButton if needed, main image will resize
    proportionatly\\
    x01_btn.addEventListener(MouseEvent.CLICK, onClick);
    function onClick(event:MouseEvent):void
    //import fl.containers.UILoader;
    import fl.controls.Label;
    import fl.controls.ProgressBar;
    var url:String = "assets/01.jpg";
    //var myUILoader:UILoader //= new UILoader();
    myUILoader.unload();
    myUILoader.autoLoad = false;
    myUILoader.source = url;
    //myUILoader.move(10, 10);
    myUILoader.scaleContent = true;
    myUILoader.load();
    var myProgressBar:ProgressBar = new ProgressBar();
    myProgressBar.source = myUILoader;
    myProgressBar.setSize(100, 10);
    myProgressBar.move(myUILoader.x+340, myUILoader.y+250)
    myProgressBar.addEventListener(ProgressEvent.PROGRESS,
    progressHandler);
    myProgressBar.addEventListener(Event.COMPLETE,
    completeHandler);
    addChild(myProgressBar)
    var myLabel:Label = new Label();
    myLabel.text = ". . . . . X . . . . . ";
    myLabel.autoSize = TextFieldAutoSize.LEFT;
    myLabel.move(myProgressBar.x, myProgressBar.y +
    myProgressBar.height);
    addChild(myLabel);
    function progressHandler(event:ProgressEvent):void {
    //trace("progress:", event.bytesLoaded, event.bytesTotal,
    int(event.currentTarget.percentComplete) + "%");
    //myLabel.text = event.bytesLoaded + " of " +
    event.bytesTotal + " bytes loaded.";
    myLabel.text = ("progress:", event.bytesLoaded,
    event.bytesTotal, int(event.currentTarget.percentComplete) + "%")
    //myLabel.text =
    Math.round((event.bytesLoaded/event.bytesTotal)*100) +"%";
    function completeHandler(event:Event):void {
    trace("complete:");
    myProgressBar.removeEventListener(ProgressEvent.PROGRESS,
    progressHandler);
    myProgressBar.removeEventListener(Event.COMPLETE,
    completeHandler);
    removeChild(myProgressBar);
    removeChild(myLabel);
    //addChild(myUILoader);
    //trace("typeMe");
    //end BUTTONCODE\\
    //end BUTTONCODE\\
    the second Loader "UILoaderTwo" auto loads another swf file
    with the INTENT to load from buttons, images into the ULLoader
    "UILoaderOne" which is on the main timeline.
    this part is failing
    the error i get in Output window is
    TypeError: Error #1009: Cannot access a property or method of
    a null object reference.
    at sOne_fla::MainTimeline/onClickz()
    the swf that loads is sOne.swf
    and it has code of this
    z01_btn.addEventListener(MouseEvent.CLICK, onClickz);
    function onClickz(event:MouseEvent):void
    import fl.containers.UILoader;
    import fl.controls.Label;
    import fl.controls.ProgressBar;
    var url:String = "assets/xx.jpg";
    var myUILoader:UILoader //= new UILoader();
    myUILoader.unload();
    myUILoader.autoLoad = false;
    myUILoader.source = url;
    //myUILoader.move(10, 10);
    myUILoader.scaleContent = true;
    myUILoader.load();
    var myProgressBar:ProgressBar = new ProgressBar();
    myProgressBar.source = myUILoader;
    myProgressBar.setSize(100, 10);
    myProgressBar.move(myUILoader.x+340, myUILoader.y+250)
    myProgressBar.addEventListener(ProgressEvent.PROGRESS,
    progressHandler);
    myProgressBar.addEventListener(Event.COMPLETE,
    completeHandler);
    addChild(myProgressBar)
    var myLabel:Label = new Label();
    myLabel.text = ". . . . . X . . . . . ";
    myLabel.autoSize = TextFieldAutoSize.LEFT;
    myLabel.move(myProgressBar.x, myProgressBar.y +
    myProgressBar.height);
    addChild(myLabel);
    function progressHandler(event:ProgressEvent):void {
    //trace("progress:", event.bytesLoaded, event.bytesTotal,
    int(event.currentTarget.percentComplete) + "%");
    //myLabel.text = event.bytesLoaded + " of " +
    event.bytesTotal + " bytes loaded.";
    myLabel.text = ("progress:", event.bytesLoaded,
    event.bytesTotal, int(event.currentTarget.percentComplete) + "%")
    //myLabel.text =
    Math.round((event.bytesLoaded/event.bytesTotal)*100) +"%";
    function completeHandler(event:Event):void {
    trace("complete:");
    myProgressBar.removeEventListener(ProgressEvent.PROGRESS,
    progressHandler);
    myProgressBar.removeEventListener(Event.COMPLETE,
    completeHandler);
    removeChild(myProgressBar);
    removeChild(myLabel);
    //addChild(myUILoader);
    //trace("typeMe");
    //end BUTTONCODE\\
    //end BUTTONCODE\\

    well, I'm such a novice to begin with.
    the loader is actually placed on stage manually, and instance
    named manually so a lot of that code is may not be needed,
    i do a lot of trial and error technique
    it is all personal stuff
    one guess i have is to set up a listner as to when the sOne
    is loaded, and then get a way to communicate to each other?
    how?

  • Colors in Flash not matching

    I created a Flash menu using color hex code #ED3169 however when I export it as a .SWF it does not match the same color as a .JPEG thats been Saved For Web.
    You can see an example of what I'm talking about here http://www.unwrapped-studio.com/index2.html As you can see the color of the Flash menu differs from that of the background stripe (despite using the same color hex code).  Any help?

    Flash uses the sRGB color space. Make sure that you use that color space in Photoshop or Fireworks when you save your artwork. You'll get better results if you use PNG rather than JPEG.

  • How to manage ApplicationDomain for loaded SWFs across different domains?

    I've been getting this following error -- when I'm loading a subsidiary SWF into a main one. The sub swf contains the overlays. OverlayOne is a subclass of Overlay.
    TypeError: Error #1034: Type Coercion failed: cannot convert OverlayOne@18684f89 to Overlay.
         at HSRawVideoPlayer/setCurrentOverLay()
         at HSRawVideoPlayer/showOverlay()
         at HSRawVideoPlayer/dotRoll()
    I googled and found that I should probably be setting the applicationDomain of the loader context of the loaded swf to be that of the loading SWF (as per Senocular's article on the subject) -- although I thought that in cases of conflict this would resolve to the loading SWFs ApplicationDomain, so not necessary.
    But I've also read that this won't work across different domains, and that's the situation here -- the client wants the urls of loading and loaded swf's to be fully qualified . Will setting the ApplicationDomain of the loaded SWF to be that of the parent solve the problem above, even if they are in different domains? Can someone show me a short code snippet? Thanks!

    Hi,
    DSS has inbuilt functionalities to compare the transactions against the in built rules.If the transactions take place not in accordance with the in-built rules,it is treated as a "violation" and is reporetd.
    Virsa is an example of DSS tool.Here you can build rules for access and process ;constantly compare the actuals Vs the rules;report the violations.
    In SAP R3 for example,the T/code:pfcg is tailored for access control,while the invoice parking [f-63] is tailored for process control.Using VIRSA,you can address to risks involved both,namely,access and process control.This is an example of how DSS can help in Risk integration.
    In these tools,we have an Engine for building the rules-based on this we build the rules.These rules are stored in a table.when a transaction-for which we have built a rule - takes place,the system compares the rules VS actuals.The inconsistencies if any are reported as violations.
    Hope this helps.
    Regards,
    Ramesh

  • Using TextSnapshot class on a loaded SWF on an iPad

    Hello, I am creating an iPad app. I am loading SWF files using a Loader object, then placing them in a movieclip and setting a SWFLoaders source property to this clip. Before I add the clip to the SWFLoader control I am using the TextSnapshot class on it, to retrieve an array with the getTextRunInfo method.
    All this works fine when I test it on my desktop machine. However, on the iPad it causes the app to crash when a control using this clip is added to the stage. Can you still use TextSnapshot with an iPad, is there a workaround for this? Thanks for your help.

    We are a university. most of our books are SWF files. We have been using iPad/FlexBuilder 4.5 to successfully view the contents of these books.
    All navigation (i.e gotoandstop(page), etc work fine. Gestures for pageforward/pageback, zoom, pan work fine also.
    Not sure I understand your comment.
    However, there IS a specific problem with text snapshot. Below is a short code piece used to highlight text on a page.
    If you remove the failing line everything works fine.
    If you "debug" the iPad device everything works fine when you execute the code on the iPad
    if you create a release build, when the application starts and the "findtext" line is executed the "app" freezes. No error message. The try/catch does not seem to catch any error.
    This is something we really need for our app. If this is a bug how should we report it.
    Thanks for your help.
      public function highlightText(txt:String):void {
       var start_pos:int = 0;
       try {
        if (txt == null || txt.length == 0) { return; }
        infoMessage("highlightText: " + txt);
        allText = _libMC.textSnapshot;      
        allTexts.push(allText);  // no reason for this but must do to make work 
        start_pos = allText.findText(start_pos, txt, false);     <<<<<< Failing line ====================================
        infoMessage("start_pos: " + start_pos);
       catch (err:Error) {
        infoMessage("error: " + err.message);   
       finally {
        infoMessage("finally");

  • Ipad i have load swf file but swf  is not working proper(flex 4.6) but android is fine to work how

    ipad i have load swf file but swf  is not working proper(flex 4.6) but android is fine to work how

    On the MBP, in iTunes, switch to Song view and enable the iCloud Status column by pulling down View > View options and selecting the option for "iCloud Status." Close the small window. Look for any tracks that have a status of "waiting." If you see several of them disable iTunes Match while holding down the Option key. Quit iTunes, wait a few seconds, then open it again and turn iTM back on. Let it compelete the scan. Wait until all tracks that are "waiting" have a status of either "matched" or "uploaded."
    On the iPad, turn off iTunes Match then launch the Music app and let the contents clear out. Power cycle the iPad for good measure, then re-enable the service once all the tracks in iTunes have been processed.

  • Loaded SWF not displaying

    I've created a 'plugin' SWF file in CS3 using actionscript 3.
    The purpose of this file is to be included as a postroll in the
    open source flash media player JW FLV/Media Player (
    http://www.jeroenwijering.com/?item=JW_Media_Player).
    I have heavily customized the media player libraries to do
    various new things/alter how things worked, and now want to be able
    to include the SWF file within this into a child sprite/movie clip.
    HOWEVER, the problem lies in that the media player is written
    completely in AS2, and therefore I have to use the MovieClipLoader
    class to load in the SWF. Updating the source to AS3 isn't an
    option unfortunatly, and downgrading the AS3 SWF to AS2 isn't an
    option either, mainly due to the fact I've learnt AS3, not AS2, and
    find it frustrating trying to find the AS2 equivalent to the AS3
    methods I know.
    The problem though lies in that MovieClipLoader does not like
    my SWF at all. Initially I was presented with a load of sandbox
    errors from when it was loaded in, which I then resolved so that no
    security errors are produced. However, whenever I load in the clip,
    the target sprite/clip is empty. I have gone through checking that
    no errors occur on load, and it reports that the loaded SWF has
    been initialized, yet I see nothing. Also, the code loading the SWF
    is not at fault as it loads any other SWF (even another AS3 SWF
    which just creates a rectangle) no problem.
    Oddly enough, using the MovieClip.loadMovie method works in
    one situation - when you load it into the root of the AS2 file.
    When loading it into an empty movie clip, the same problem of a
    blank clip occurs. The problem is not specific to the media player
    either, as it happened in any AS2 file where I was testing how to
    load in the AS3 SWF.
    If it is of any use, the sandbox errors produced by the AS3
    file when loaded into AS2 swf I had to resolve where to do with
    stage access for getting the stage height and width, and a
    Loader.content error when pulling out the BitmapData. These were
    resolved via setting the allowed domains policy and eliminating any
    reference to stage.stageHeight/With.
    Does anyone have any ideas on how to solve this? The only
    possible solution I've been able to think of so far since the AS3
    swf won't display is to play with the LocalConnection class as
    tests showed I can communicate between the AS2 and AS3 files, but
    this would have to be a last resort, and is less than ideal when
    there can be multiple instances of the player running (I would need
    to use unique connection names for each instance so as to prevent
    player A interacting with player B, and also as only one of the
    players can listen on the connection at once).

    I have the component in the top level also,
    I get this error:
    TypeError: Error #2007: Parameter child must be non-null.
              at flash.display::DisplayObjectContainer/addChildAt()
              at fl.controls::BaseButton/drawBackground()[C:\Program Files (x86)\Adobe\Adobe Flash CS5\Common\Configuration\Component Source\ActionScript 3.0\User Interface\fl\controls\BaseButton.as:615]
              at fl.controls::LabelButton/draw()[C:\Program Files (x86)\Adobe\Adobe Flash CS5\Common\Configuration\Component Source\ActionScript 3.0\User Interface\fl\controls\LabelButton.as:724]
              at fl.core::UIComponent/drawNow()[C:\Program Files (x86)\Adobe\Adobe Flash CS5\Common\Configuration\Component Source\ActionScript 3.0\User Interface\fl\core\UIComponent.as:1343]
              at fl.controls::List/drawList()[C:\Program Files (x86)\Adobe\Adobe Flash CS5\Common\Configuration\Component Source\ActionScript 3.0\User Interface\fl\controls\List.as:594]
              at fl.controls::List/draw()[C:\Program Files (x86)\Adobe\Adobe Flash CS5\Common\Configuration\Component Source\ActionScript 3.0\User Interface\fl\controls\List.as:474]
              at .tree::TreeList/draw()
              at fl.core::UIComponent/callLaterDispatcher()[C:\Program Files (x86)\Adobe\Adobe Flash CS5\Common\Configuration\Component Source\ActionScript 3.0\User Interface\fl\core\UIComponent.as:1532]
    I've checked the definitions for the tree component,
    The LabelButton and List I don't have much control over.
    I'm not sure how to fix this.  The xml is correct and loads easily if it's in the root document.
    The list component doesn't load the labels, It stops on the first one.
      What do I do next?

  • Android kitkat issue in loading swf file from device. URL found but not working

    Hi,
    I am facing one issue from a very long time regarding file access in Android Kitkat version 4.4.*. I have developed Adobe Air player application for android and it is working as expected below kitkat version but not on kitkat.
    I am following this methods -
    NativeApplication.nativeApplication.addEventListener(InvokeEvent.INVOKE, onInvoke);
    public function onInvoke(event:InvokeEvent):void
                                        var newFile:String = String(event.arguments[0]);
                                        trace("Received new file from Android: "+newFile)
    Received URL form device in Android Kitkat -
    /storage/emulated/0/.iProfData/swf/playListFiles/ContentCreation/Ma_V2_522/en/Animation/27 031_1_Welcome screen.swf
    file:////storage/emulated/0/.iProfData/swf/playListFiles/ContentCreation/Ma_V2_522/en/Anim ation/27031_1_Welcome screen.swf 
                    -  Loading this URL using loader class in AS3 AIR but not working.
    file%3A///storage/emulated/0/.iProfData/swf/playListFiles/ContentCreation/Ma_V2_522/en/Ani mation/27031_1_Welcome%20screen.swf
           - Have used also by doing escape character but still it is not working showing file not found both SWF and mp4 case. (Mp4 case NetStream.Play.FileNotFound)
    By using the above methods I can have swf or mp4 video url but when I am loading it, It is not working giving error message "File not found/ IO Error". I have read that if use escape character then it will work but I have used escape character also but it is not working.
    Humble request you to please advise how can I solve this issue.
    Best regards,
    Sunil Kumar

    Starting in KitKat, Google requires that applications have permission to access files on the system. You must specifically add either the READ_EXTERNAL_STORAGE or WRITE_EXTERNAL_STORAGE permissions in order to access files. Adding either one of those permissions should let you read/access files on the device. Prior to KitKat, you didnt have to have these permissions listed in the manifest to access files.

  • Invoking class from loaded swf

    I'm working on a project where I'm loading in a video player
    as an external swf to my main movie. I'm not able to get my video
    or the custom player to show up, but sound is there (I've done the
    whole Library>New Video thing, so I have a video object to
    reference).
    My question is: My loaded swf uses #include to include a
    script which imports two classes from a subdirectory, could that be
    causing the problem? My main movie never uses the classes.
    Just want to make sure this isn't my problem before I go
    digging into the script again!

    That is unlikely to be the problem. The .as includes are
    compiled into the
    SWF at publish. Much more likely is that you have
    inappropriate references
    to _root in your loaded movie. As it stands, the scope of
    _root, once you
    load the movie into another, is the _root of the *loading*
    movie. Either
    change these refs, or set the _lockroot property of the mc
    you are loading
    into to true.,
    Remove '_spamkiller_' to mail

  • Access the property of main class in loaded swf.

    Hi
    i have one main.fla, its document class is main.as. the code in main.as is
    package
    import flash.display.MovieClip;
    public class Main extends MovieClip
    private var loading:Loading;
    public var trovami:Number=10;
    public function Main()
    stage.frameRate=31;
    loadSWF();
    private function loadSWF():void
    loading=new Loading(this);
    Loadind.as is another class where i load another swf its name is my_swf.
    the code of loading class is:
    package
    import flash.display.MovieClip;
    import flash.display.SimpleButton;
    import flash.text.TextField;
    import flash.display.Loader;
    import flash.events.*;
    import flash.net.URLRequest;
    public class Loading extends MovieClip
    private var _fla:MovieClip;
    private var url:String;
    public var val:String;
    private var loader:Loader;
    public function Loading(fla:MovieClip)
    _fla=fla;
    init();
    private function init():void
    url='my_swf.swf';
    var request:URLRequest=new URLRequest(url);
    loader=new Loader();
    initListeners(loader.contentLoaderInfo);
    loader.load(request);
    private function initListeners(dispatcher:IEventDispatcher):void
    dispatcher.addEventListener(Event.COMPLETE,completato);
    private function completato(event:Event):void
    _fla.addChild(loader);
    loader.y=10;
    val="hello"
    and the document class of loaded swf is Main2. in my_swf.fla there is one text its name is:
    a_txt.
    so i have to use property of Loading class in Main2 for text.
    code of Main.as is
    package
    import flash.display.MovieClip;
    import flash.text.*;
    public class Main2 extends MovieClip
    public function Main2()
    a_txt.text=val;
    where val is the property of Loading class.
    so how can i access.

    You have a reference to your loaded movie within your Loading class - instead of just setting val to a string - add a method in your Main2 class - and call that from Loading - passing the string to it. Push not pull...
    Main 2 becomes:
    public function Main2() {
         //a_txt.text=val;
    public function setText(val:String):void {
        a_txt.text = val;
    And then in your Loading class - when you're done loading just call setText:
    private function completato(e:Event):void
        addChild(loader);
        loader.y=10;
        MovieClip(loader.content).setText("hello");
        //val="hello";

  • How do you work around code not functioning in loaded SWFs on iOS.

    Hi,
    I came across a post that suggested that in iOS, code does not function in loaded SWFs and a quick test demonstarted that this was true.  I'm just wondering if anyone has come up with a workaround for this.
    I'd appreciate any insight you can give me.
    Best,
    Chris

    Chris,
    The reason external SWFs with code in the doesn't work is that ADT cross-compiles your root SWF (and only your root swf) into objective-c code consumable by an iOS device.
    I created a workaround for this problem - as long as you embed your asset like this:
        [Embed(source="gameLevel.swf")]
          private var gameLevel:Class;
        addChild(new gameLevel());
    In this scenario, if gameLevel.swf has code in it, it typically wouldn't work in iOS, because new gameLevel() would create a Loader and interpret SWF bytecode.  But, if you first run the above SWF through my tool called SWFMerge, it will take your embedded SWF and merge it into your root SWF.  The result is that ADT will compile your code into objective-C, it will work on iOS, and note: new gameLevel() now results in an instance of your asset - NOT a Loader.
    The SWFMerge tool is here:
    http://www.onetacoshort.com/temp/SWFMerge_alpha.swf
    LMK if this workaround works for you or if you have trouble.  Cheers!
    -Jeff

Maybe you are looking for

  • /private/etc/cups folder is missing

    I am working tech support for a college and a faculty member currently working abroad called in with a problem that Microsoft Word for Mac would lock up everytime he tried to save or print a file. I remoted into his machine and I tried the usual susp

  • Mapping of oracle9i

    Hi,I installed the oracle9i database in e drive and because of some reasons i changed the drive name to d: but now i am not able to run oracle on pc.can someone please help me in changing the mapping of oracle path as i dont want drive to rename agai

  • Problem to download contacts from 6021 to car thro...

    Hello, I face a problem with my new car (Renault Laguna). After succeeded to connect my 6021 to the Navigation hand free system, I can use properly the phone to call and receive call, but I did not find the way to download my contacts. The car system

  • Every time I open my itunes a message saying an unknown error has ocurred with the following number  -42110. how can I solve it?

    every time I open my itunes a message saying an unknown error has ocurred with the following number  -42110. how can I solve it?

  • Getting my DBs timezone in oracle 11.2.0.3

    I need the timezone of the server that the DB sits on. I don't want the offset. I need the region name. This is because some regions use daylight savings time and some do not. Plus an SA can change the time of the OS. Another company manages our serv