“It's not there. I must be going crazy.”
By Kevin Fox
When I fist made attempts to make Flite Ad Studio 3 components, my first foundation steps would fail. I wanted to make a custom video player or a custom feed, and I would meticulously code using the documentation and then I would get confused because the code was correct according to the examples, but nothing traced out, not even 'null'. "Why is the object not appearing? This is crazy!" Here is why; it's easy to trip over at first...
In the component studio there is an INSPECTOR panel. In the INSPECTOR panel there is a tab called DEPENDENCIES. If the dependency is not checked for the API item that you are trying to use, you are not going to get anything at runtime. Only a few API calls require you to check a respective checkbox, so it can be easy to forget if you are focusing on bigger campaign-related solutions. If I was keener I would have memorized all the API items in the checkbox list below (click thumbnail below screen cap to get enlarged view of list).
Why DEPENDENCIES? Why the snag wire? If this was not available, the ad would have more KB size than it really needs. In the same model as TweenLite, we want the ad loading only the code it really needs. I originally thought code amount didn't weigh down a SWF much. It's just text right? It can't be as hefty as an image or font, right? I know better now. A modest 300 line class can add more weight than you'd think. Add a few more classes and things tally up quick.
I'll end with a few size factoids: Our runtime, give or take, is very roughly, around 55KB. A modest sized component with a dependency or two is very roughly 30KB. If that component loads an XML feed that has about 15-20 items, that can add around 25KB. You can see how size management can become important in a world where publishers' size specs have mysteriously not changed in 8 years.