Hi Anuj,

//"An internal build error has occurred. Right-click for more information."

I had difficulty in understanding exactly what was needed to use Flash assets 
and had similar errors. It doesn't help when the documentation varies so much 
on what to do. Unfortunately the Adobe PDF's have no publishing date written 
inside and so you often get information from out-of-date ones.

I am able to use Flash Assets but my projects are all ActionScript projects 
rather than Flex projects. As a result I do not have to turn the asset into a 
Flex component by making it an extension of the UIMovieClip class. For example, 
on the stage I have a red dot with a radial gradient. I make it into a symbol 
and it goes in the library. It has to be either a button or MovieClip. Say I 
call it RedDot. I can delete the one on the stage. When I publish I make sure 
the SWC box is ticked in the publish settings. In Flex Builder 3 I right click 
the project, go to build options and add the swc. If I then type var rd:, 
suddenly RedDot is on the list of types I select it and hit return. So I finish 
up with var rd:RedDot = new RedDot and I can addChild(rd) and that's it.

With Flex projects the only difference is that Flex needs to give the mxml 
compiler access to RedDot. It does this by agreeing an interface to it - this 
is just a set of agreed functions/methods that both sides agree on. This is the 
UIMovieClip - UserInterfaceToMovieClip (probably). So in Flash my RedDot has to 
extend UIMovieClip. If you have already done this, right-click the symbol in 
the library and check the properties to see this. If not, select the symbol and 
go to the Commands menu in Flash and choose Convert symbol to Flex component. 
This has three consequences, which you can just do manually yourself:

1. The fps is set to 24.
2. The Base Class is set to mx.flash.UIMovieClip.
3. The FlexComponentBase is added to the library.

Note: I have just checked and found that the library symbol must have export 
for actionscript ticked before you Convert it, otherwise it doesn't do it. Now 
you can either right-click the symbol and export the swc, or publish and 
produce the swc. I have a swf with five symbols in it and when published my swc 
has five symbols in which I can use in Flex. I suggest you draw the simplest 
graphic, turn it into a MovieClip symbol for the library. Make sure export for 
actionscript is set in the library symbol. Select it and Convert to a Flex 
Component. Check the properties for the UIMovieClip class. Publish with SWC 
ticked. Import it, and it should be available. You don't need to write a class 
to go with it since Flash produces its own cutdown class for it when ti doesn't 
find one.

I got the above error when I followed various guidelines and tried to do 
something more complicated.

Fingers crossed for you!

John

Reply via email to