<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Nils...ActionScript Developer</title>
	<atom:link href="http://nils.realeyesmedia.com/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://nils.realeyesmedia.com</link>
	<description>Here&#039;s what I&#039;ve encountered ...</description>
	<lastBuildDate>Tue, 20 Mar 2012 21:52:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Transparent WMode $#&amp;$*s Up Chrome</title>
		<link>http://nils.realeyesmedia.com/?p=140</link>
		<comments>http://nils.realeyesmedia.com/?p=140#comments</comments>
		<pubDate>Tue, 20 Mar 2012 21:52:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Chrome]]></category>
		<category><![CDATA[crash]]></category>
		<category><![CDATA[Flash Player]]></category>
		<category><![CDATA[wmode]]></category>

		<guid isPermaLink="false">http://nils.realeyesmedia.com/?p=140</guid>
		<description><![CDATA[Ran across this annoying tidbit today. If you set the wmode of Chrome to transparent for a Flex app embed (params.wmode = &#8220;transparent&#8221;; if you&#8217;re using SWFObject), resizing the window fairly quickly will crash Flash Player. This doesn&#8217;t happen in &#8230; <a href="http://nils.realeyesmedia.com/?p=140">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Ran across this annoying tidbit today. If you set the wmode of Chrome to transparent for a Flex app embed (params.wmode = &#8220;transparent&#8221;; if you&#8217;re using SWFObject), resizing the window fairly quickly will crash Flash Player. This doesn&#8217;t happen in Firefox or Internet Explorer.</p>
<p>Here&#8217;s how you can replicate. Create a new Flex project. Edit the index.template.html file and add in the wmode param, setting it to &#8216;transparent&#8217;. Debug your Flex app in Chrome. Resize the window back and forth a couple of times. Wait a second. Flash crashes in Chrome.</p>
<p>Weird, and it took a long time to track down.</p>
]]></content:encoded>
			<wfw:commentRss>http://nils.realeyesmedia.com/?feed=rss2&#038;p=140</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting Sassy</title>
		<link>http://nils.realeyesmedia.com/?p=136</link>
		<comments>http://nils.realeyesmedia.com/?p=136#comments</comments>
		<pubDate>Fri, 03 Feb 2012 23:35:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Compass]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Less]]></category>
		<category><![CDATA[Sass]]></category>

		<guid isPermaLink="false">http://nils.realeyesmedia.com/?p=136</guid>
		<description><![CDATA[I was recently introduced to Sass and Compass for doing programmatic CSS. Why has no one told me about this before? This is what I have been longing for, for so long! You can use variables, do mathematical operations, extend &#8230; <a href="http://nils.realeyesmedia.com/?p=136">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I was recently introduced to <a title="Sass" href="http://sass-lang.com/">Sass</a> and <a title="Compass" href="http://compass-style.org">Compass</a> for doing programmatic CSS. Why has no one told me about this before? This is what I have been longing for, for so long! You can use variables, do mathematical operations, extend classes, and use mixins. So, so, incredibly rad.</p>
<p>I&#8217;ve been playing around with Sass and took a look at <a title="Less CSS" href="http://lesscss.org/#synopsis">Less</a> as well. I&#8217;m hoping to do a deeper dive into these awesome ways to do CSS, but here&#8217;s what you should know for starters. Sass files are programmatic CSS files that get compiled into standard CSS files. You can use Compass to compile them and add in a ton of functionality, most notably cross-browser support for things like web fonts and rounded corners. It reduces the amount of CSS you have to write and makes your CSS more maintainable to boot. Less is similar, but is usually done at request time through Javascript. If you want to compare Sass and Less, this <a title="Comparison of Sass and Less" href="http://coding.smashingmagazine.com/2011/09/09/an-introduction-to-less-and-comparison-to-sass/">comparison by Jeremy Hixon</a> is a good starting point.</p>
<p>If you want to get started with Sass, the <a title="Tutorial for Getting Started with Sass" href="http://sass-lang.com/tutorial.html">tutorial for Sass</a> is a great place. They give a great way to get ramped up on the subject. If you&#8217;re coding in Dreamweaver, Sass needs an little extra help getting started. You need to add in the file type to Dreamweaver&#8217;s recognized file types to get it to even open the files easily. To get code-hinting for CSS, you need to add the scss file type to DW&#8217;s CSS definition. This <a title="Changing and adding file extensions recognized by Dreamweaver" href="http://kb2.adobe.com/cps/164/tn_16410.html">Adobe tech note on file associations</a> gives the individual steps for  doing it.</p>
<p>If instead you&#8217;re coding in Aptana, setting up Sass associations is a bit easier. <a title="Changing your file association preferences" href="https://wiki.appcelerator.org/display/tis/Changing+your+file+association+preferences">These instructions</a> give you the basics. Aptana recognizes the SCSS file type, but in order to get code-hinting, you need to add the CSS editor to the SCSS file type, then set that editor as the default.</p>
<p>Then to get going with Compass, you can check out <a title="Compass" href="http://compass-style.org/">the Compass site</a>. They have <a title="Installing Compass" href="http://compass-style.org/install/">instructions on how to install Compass</a>, though they are not particularly clear. You need to understand the command line, though there are some GUI apps out there for Compass listed on the install page. Once you get comfy with Compass, you may want to configure it to get it to use your site structure instead of the assumed structure Compass wants you to use. The search on the site is pretty ineffectual, so make sure you check out this <a title="Compass Configuration Reference" href="http://compass-style.org/help/tutorials/configuration-reference/">configuration documentation</a>.</p>
<p>Hopefully I&#8217;ll be back with a more thorough rundown of Sass and Compass, but for the mean time, check out these awesome bits of tech!</p>
]]></content:encoded>
			<wfw:commentRss>http://nils.realeyesmedia.com/?feed=rss2&#038;p=136</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Debugging Installed AIR Apps</title>
		<link>http://nils.realeyesmedia.com/?p=132</link>
		<comments>http://nils.realeyesmedia.com/?p=132#comments</comments>
		<pubDate>Thu, 10 Nov 2011 21:41:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[debugging]]></category>
		<category><![CDATA[RTE]]></category>

		<guid isPermaLink="false">http://nils.realeyesmedia.com/?p=132</guid>
		<description><![CDATA[We&#8217;ve been trying to debug an run-time error in an AIR app that only is happening on our PM and client&#8217;s computers. None of our developers can see it. We tried putting in a logging system that would log the &#8230; <a href="http://nils.realeyesmedia.com/?p=132">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve been trying to debug an run-time error in an AIR app that only is happening on our PM and client&#8217;s computers. None of our developers can see it. We tried putting in a logging system that would log the stack trace of the error, but when the error gets to our handler, the stack trace is null. So we wanted to get our PM to be able to see the RTE dialogs we&#8217;d see if we were debugging. How to do that?</p>
<p>Xavi Beumala has the answer. In <a href="http://www.rialvalue.com/blog/2009/08/16/debugging-production-ready-air-applications/">his post</a>, he tells about how you can enable RTE dialogs in installed AIR apps. It&#8217;s super simple. You just go to the application&#8217;s install directory, then go into the META-INF/AIR directory and create a directory named debug there. You don&#8217;t have to put anything into it. You just make the directory and you&#8217;ll get RTE dialogs in your AIR app. Pretty useful.</p>
<p>I should note that Xavi has quite a few other suggestions in his post that may be more useful for debugging, but this was a quick win.</p>
]]></content:encoded>
			<wfw:commentRss>http://nils.realeyesmedia.com/?feed=rss2&#038;p=132</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CKEditor is Awesome!</title>
		<link>http://nils.realeyesmedia.com/?p=126</link>
		<comments>http://nils.realeyesmedia.com/?p=126#comments</comments>
		<pubDate>Mon, 07 Nov 2011 22:09:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ColdFusion]]></category>
		<category><![CDATA[CKEditor]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[rich text editor]]></category>

		<guid isPermaLink="false">http://nils.realeyesmedia.com/?p=126</guid>
		<description><![CDATA[I&#8217;ve been working on a ColdFusion site for a client that needs to let them edit HTML, but in a limited fashion. We want to keep them using our styles and not be able to access every color or typeface &#8230; <a href="http://nils.realeyesmedia.com/?p=126">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working on a ColdFusion site for a client that needs to let them edit HTML, but in a limited fashion. We want to keep them using our styles and not be able to access every color or typeface under the sun. We opted to use the <a title="CKEditor" href="http://ckeditor.com/">CKEditor</a>, and I am exceptionally glad we did.</p>
<p>CKEditor is a Javascript-based rich text editor that is super easy to implement and has an amazing breadth of functionality. All it requires is an include of the JS file and giving a text area tag a particular class. Boom. That&#8217;s it.</p>
<p>Of course, there&#8217;s a lot of configuring you can do. You can configure the different toolbars used in the editor, removing or adding functionality. You can specify stylesheets that get incorporated with the editor. There&#8217;s a whole host of options that I didn&#8217;t explore, but for even for the basics, it is tremendous.</p>
<p>One thing that impressed me quite a bit was how it handles images. People can include images that are already on the web in a handy dialog box. If you configure CKEditor correctly, you can even put in the means for users to upload images. You specify a page that handles image uploads, and the dialog automatically populates the URL field with the URL your page returns.</p>
<p>That subject, however, brings up one of the sore points with CKEditor. The documentation is pretty good at telling you what code you need to put in for configuration, but not where pieces of code need to go. And in the case of image uploading, it took me a long time to find the information on what the image upload page needed to do in order to get the image URL back to the upload dialog.</p>
<p>So here are the two things I learned that I wanted to pass on:</p>
<ol>
<li>You can configure all the CKEditor instances in your site from one config file. However, if you want to configure one instance of the editor differently, you can put in configuration code into the page to override the global config. The trick is that you need to put in that configuration code AFTER the text area that will be used for CKEditor. Otherwise it gets ignored.<br />
<code> &lt;textarea id="myHTML" class="ckeditor" name="myHTML"&gt; #html# &lt;/textarea&gt;<br />
&lt;script type="text/javascript"&gt; // &lt;![CDATA[<br />
CKEDITOR.replace( 'myHTML', { toolbar : 'Basic' });<br />
// ]]&gt; &lt;/script&gt;<br />
</code></li>
<li>When you create the form page that uploads the image, what it needs to return is this:<br />
<code> window.parent.CKEDITOR.tools.callFunction( 'CKEditorFuncNum', 'imageURL', 'myMessage');<br />
</code>The imageURL and myMessage are replaced with the image&#8217;s URL and any message you want displayed. The message parameter is optional. The CKEditorFuncNum is replaced with a parameter of the same name that is also passed in with the form.</li>
</ol>
<p>Other than that, I have few complaints. This is an incredible piece of code and functionality that is given away for free. I have barely even touched on its awesomeness. So if you need a rich text editor, give CKEditor a try, and you&#8217;ll be wowed.</p>
]]></content:encoded>
			<wfw:commentRss>http://nils.realeyesmedia.com/?feed=rss2&#038;p=126</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>The Heartburn of SSL and CFLDAP</title>
		<link>http://nils.realeyesmedia.com/?p=122</link>
		<comments>http://nils.realeyesmedia.com/?p=122#comments</comments>
		<pubDate>Wed, 22 Jun 2011 16:23:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ColdFusion]]></category>
		<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[certificates]]></category>
		<category><![CDATA[CFLDAP]]></category>
		<category><![CDATA[LDAP]]></category>
		<category><![CDATA[SSL]]></category>

		<guid isPermaLink="false">http://nils.realeyesmedia.com/?p=122</guid>
		<description><![CDATA[It&#8217;s been a while sense I&#8217;ve posted about ColdFusion. However, I&#8217;ve got to post this. We were trying to use the CFLDAP tag to authenticate users against an Active Directory service over a secure connection. I didn&#8217;t know much about &#8230; <a href="http://nils.realeyesmedia.com/?p=122">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been a while sense I&#8217;ve posted about ColdFusion. However, I&#8217;ve got to post this. We were trying to use the CFLDAP tag to authenticate users against an Active Directory service over a secure connection. I didn&#8217;t know much about Active Directory and LDAP, but I couldn&#8217;t even get connected to the server. I just kept getting a ColdFusion error telling me &#8220;Connection to LDAP server failed&#8221; and no more info. Well, thanks, ColdFusion. After searching the Internet for solutions, we found many people solved the issue by installing a certificate from the LDAP server to the ColdFusion server. We gave that a try, but to no avail. So we tried a bunch of other things, including switching the user the ColdFusion was running as from &#8220;Local Service&#8221; to a user name that has access to the LDAP server. No dice. We were running out of options, so I revisited the certificate idea, and praise the Lord, I found this:<br />
<a href="http://objectmix.com/cold-fusion/410669-querying-secure-cfldap.html">http://objectmix.com/cold-fusion/410669-querying-secure-cfldap.html</a><br />
The gist of it is, the Adobe documentation for adding a certificate to ColdFusion&#8217;s keystore is wrong. There are multiple cacerts keystores on ColdFusion, and it tells you to add it to the cacerts in {ColdFusion9}\runtime\jre\bin. However, there is another cacerts. It resides in {ColdFusion9}\runtime\jre\lib\security. That is the one you actually want to add your certificate to. It&#8217;s especially confusing since you must run the keytool from the jre\bin directory, but you&#8217;re adding to a keystore in a different directory.</p>
<p>One other thing I found was that on Windows 7, in order to add the cert to the keystore, you have to run CMD as an Administrator. Otherwise the keytool will say it added the key, but then could not find the keystore because access was denied. Once I ran CMD as an admin, all was well with the world. I restarted ColdFusion and was able to connect using CFLDAP. I don&#8217;t think of LDAP as exciting, but once I got this working, I wanted to run a victory lap around our office.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://nils.realeyesmedia.com/?feed=rss2&#038;p=122</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Multiheight Children in a VGroup</title>
		<link>http://nils.realeyesmedia.com/?p=118</link>
		<comments>http://nils.realeyesmedia.com/?p=118#comments</comments>
		<pubDate>Tue, 19 Apr 2011 20:17:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[layout]]></category>
		<category><![CDATA[vgroup]]></category>

		<guid isPermaLink="false">http://nils.realeyesmedia.com/?p=118</guid>
		<description><![CDATA[Since the move up to Flex 4, I&#8217;ve been disappointed with the layout of the VGroup/HGroup. Many times it will not resize or relayout when the size of a child has changed. Point in case was when I tried to &#8230; <a href="http://nils.realeyesmedia.com/?p=118">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Since the move up to Flex 4, I&#8217;ve been disappointed with the layout of the VGroup/HGroup. Many times it will not resize or relayout when the size of a child has changed. Point in case was when I tried to put some dynamic configurable form fields into a container. Based on their state, they could be vertical or horizontal and could have an additional description line. This meant they could be many different heights. Unfortunately, once they were laid out, they kept reverting to their starting height, and the VGroup laid them out as if they all were 20 pixels tall.</p>
<p>I tried a variety of things involving invalidateSize and invalidateDisplayList to kick the VGroup in the head and get it to realize its children were a different height. Nothing worked. The final thing I did though, did work. Once the children were added to the VGroup, I added an event listener for FlexEvent.UPDATE_COMPLETE. In the handler for that, I immediately removed the listener and then looped through the children and set their height explicitly to their contentHeight. The contentHeight was unavailable before the display list had been updated, but afterwards, it had the correct height, while the explicit height was still wrong.</p>
<p>Here&#8217;s what I ended up with in the handler of my UPDATE_COMPLETE event:</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #0033ff; font-weight: bold;">private</span> <span style="color: #339966; font-weight: bold;">function</span> _onUpdateComplete<span style="color: #000000;">&#40;</span> event<span style="color: #000066; font-weight: bold;">:</span>FlexEvent <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span>
<span style="color: #000000;">&#123;</span>
	formContainer_vg<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">removeEventListener</span><span style="color: #000000;">&#40;</span> FlexEvent<span style="color: #000066; font-weight: bold;">.</span>UPDATE_COMPLETE<span style="color: #000066; font-weight: bold;">,</span> _onUpdateComplete <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #6699cc; font-weight: bold;">var</span> numChildElements<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">int</span> = formContainer_vg<span style="color: #000066; font-weight: bold;">.</span>numElements<span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #0033ff; font-weight: bold;">for</span><span style="color: #000000;">&#40;</span> <span style="color: #6699cc; font-weight: bold;">var</span> i<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">int</span> = <span style="color: #000000; font-weight:bold;">0</span><span style="color: #000066; font-weight: bold;">;</span> i <span style="color: #000066; font-weight: bold;">&lt;</span> numChildElements<span style="color: #000066; font-weight: bold;">;</span> i<span style="color: #000066; font-weight: bold;">++</span> <span style="color: #000000;">&#41;</span>
	<span style="color: #000000;">&#123;</span>
		<span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">child</span><span style="color: #000066; font-weight: bold;">:</span>Group = Group<span style="color: #000000;">&#40;</span> formContainer_vg<span style="color: #000066; font-weight: bold;">.</span>getElementAt<span style="color: #000000;">&#40;</span> i <span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #004993;">child</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">height</span> = <span style="color: #004993;">child</span><span style="color: #000066; font-weight: bold;">.</span>contentHeight<span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://nils.realeyesmedia.com/?feed=rss2&#038;p=118</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Advertisement Plugin in REOPS for Timeline Happiness</title>
		<link>http://nils.realeyesmedia.com/?p=110</link>
		<comments>http://nils.realeyesmedia.com/?p=110#comments</comments>
		<pubDate>Fri, 18 Mar 2011 15:52:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[ads]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[metadata]]></category>
		<category><![CDATA[osmf]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://nils.realeyesmedia.com/?p=110</guid>
		<description><![CDATA[Recently I&#8217;ve been on the hunt for a means to bypass the aggregate timelines of SerialElements in OSMF. I want to do preroll and postroll ads that don&#8217;t add to the timeline of the main element I&#8217;m playing. After asking &#8230; <a href="http://nils.realeyesmedia.com/?p=110">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Recently I&#8217;ve been on the hunt for a means to bypass the aggregate timelines of SerialElements in OSMF. I want to do preroll and postroll ads that don&#8217;t add to the timeline of the main element I&#8217;m playing. After asking around in the Adobe forums, I was pointed to the AdvertisementPlugin, which is explained in <a title="Stage Video and Ad Insertion Plugin for OSMF" href="http://blogs.adobe.com/osmf/2011/03/stage-video-and-ad-insertion-plug-in-for-osmf.html">this post on the OSMF blog</a>. After playing around with it, this looks like just what I needed.</p>
<p>I work with the REOPS framework, so I went ahead and integrated it in. I have the code below, but first a word on what I had to do. There are some limitations to how REOPS currently can take in Plugin metadata, so I ended up doing a little trickery in the config XML for the plugin:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;plugin</span> <span style="color: #000066;">path</span>=<span style="color: #ff0000;">&quot;assets/plugins/AdvertisementPlugin.swf&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;metaData</span> <span style="color: #000066;">namespace</span>=<span style="color: #ff0000;">&quot;preroll&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;value</span> <span style="color: #000066;">key</span>=<span style="color: #ff0000;">&quot;preroll&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;class&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;url<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><span style="color: #339933;">&lt;![CDATA[http://gcdn.2mdn.net/MotifFiles/html/1379578/PID_938961_1237818260000_women.flv]]&gt;</span><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/url<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/metaData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;metaData</span> <span style="color: #000066;">namespace</span>=<span style="color: #ff0000;">&quot;midroll&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;value</span> <span style="color: #000066;">key</span>=<span style="color: #ff0000;">&quot;midroll&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;class&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;url<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><span style="color: #339933;">&lt;![CDATA[http://gcdn.2mdn.net/MotifFiles/html/1379578/PID_938961_1237818260000_women.flv]]&gt;</span><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/url<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/metaData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;metaData</span> <span style="color: #000066;">namespace</span>=<span style="color: #ff0000;">&quot;midrollTime&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;value</span> <span style="color: #000066;">key</span>=<span style="color: #ff0000;">&quot;10&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>10<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/metaData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/plugin<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>There are three types of metadata for this plug-in. The first are the components, the MediaContainer and the MediaPlayer. Those are handled in the application class below. In the config, I&#8217;m handling the other two types: files and times. The files are fairly straightforward, but due to REOPS handling of plug-in metadata, I had to cast them as OSMF URLs using the org.osmf.utils.URL class. I can then pull the URL out in the application class. The times I didn&#8217;t want to handle as URLs, so I fudged it a bit and just made the keys the number of seconds to wait before displaying a midroll ad.</p>
<p>The reason for this is that the Advertisement Plugin is expecting its metadata as a simple string or number, but REOPS casts metadata as Metadata objects. So in the app file, I extracted the data from the plugin&#8217;s metadata and reapplied it in the format it was expecting. In addition to that, the plugin metadata needs to hold references to the MediaPlayer and MediaContainer. Since REOPS dynamically creates its media elements and plugins, I had to hijack that process a little and pass in the two components before the plugin was loaded. I also had to change the start up order for REOPS around a bit, because it loads its plugins before it creates the MediaPlayer and MediaContainer it uses. I called the initMediaPlayer method early and blocked later calls to it. Unfortunately this breaks the authorized domain functionality in REOPS, but for this proof of concept I didn&#8217;t feel the need to circumvent that.</p>
<p>Once the plug-in was integrated, it simply was a matter of knowing when to hide the controls for the player. The plugin works by running two media players, and swapping the media element in the media container for the ad and then swapping back. By listening for the LayoutTargetEvent.ADD_CHILD_AT event, I could check to see if the media element that was added was my main media element. If it was, I would make the skin visible. If it wasn&#8217;t, I would make the skin invisible. That seemed to do the trick. I&#8217;m rather pleased to find this plugin, as it does something many people want and makes an otherwise difficult task much easier.</p>
<p>Here&#8217;s my application class:</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #9900cc; font-weight: bold;">package</span>
<span style="color: #000000;">&#123;</span>
	<span style="color: #0033ff; font-weight: bold;">import</span> com<span style="color: #000066; font-weight: bold;">.</span>realeyes<span style="color: #000066; font-weight: bold;">.</span>osmfplayer<span style="color: #000066; font-weight: bold;">.</span>model<span style="color: #000066; font-weight: bold;">.</span>Plugin<span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #0033ff; font-weight: bold;">import</span> <span style="color: #004993;">flash.display</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">Sprite</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #0033ff; font-weight: bold;">import</span> org<span style="color: #000066; font-weight: bold;">.</span>osmf<span style="color: #000066; font-weight: bold;">.</span>layout<span style="color: #000066; font-weight: bold;">.</span>LayoutTargetEvent<span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #0033ff; font-weight: bold;">import</span> org<span style="color: #000066; font-weight: bold;">.</span>osmf<span style="color: #000066; font-weight: bold;">.</span>layout<span style="color: #000066; font-weight: bold;">.</span>MediaElementLayoutTarget<span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #0033ff; font-weight: bold;">import</span> org<span style="color: #000066; font-weight: bold;">.</span>osmf<span style="color: #000066; font-weight: bold;">.</span>metadata<span style="color: #000066; font-weight: bold;">.</span>Metadata<span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #0033ff; font-weight: bold;">import</span> org<span style="color: #000066; font-weight: bold;">.</span>osmf<span style="color: #000066; font-weight: bold;">.</span>utils<span style="color: #000066; font-weight: bold;">.</span>URL<span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #9900cc; font-weight: bold;">class</span> REOPSAdPluginTest <span style="color: #0033ff; font-weight: bold;">extends</span> REOPS
	<span style="color: #000000;">&#123;</span>
		<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #339966; font-weight: bold;">function</span> REOPSAdPluginTest<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
		<span style="color: #000000;">&#123;</span>
			<span style="color: #0033ff; font-weight: bold;">super</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #000000;">&#125;</span>
		override <span style="color: #0033ff; font-weight: bold;">protected</span> <span style="color: #339966; font-weight: bold;">function</span> _loadPluginsFromConfig<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span>
		<span style="color: #000000;">&#123;</span>
			<span style="color: #009900; font-style: italic;">//Call this early so it's available for the plugin</span>
			<span style="color: #0033ff; font-weight: bold;">super</span><span style="color: #000066; font-weight: bold;">.</span>_initMediaPlayer<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
			_mediaPlayerShell<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">addEventListener</span><span style="color: #000000;">&#40;</span> LayoutTargetEvent<span style="color: #000066; font-weight: bold;">.</span>ADD_CHILD_AT<span style="color: #000066; font-weight: bold;">,</span> _onContainerAddChild <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
			<span style="color: #0033ff; font-weight: bold;">for</span> <span style="color: #0033ff; font-weight: bold;">each</span><span style="color: #000000;">&#40;</span> <span style="color: #6699cc; font-weight: bold;">var</span> plugin<span style="color: #000066; font-weight: bold;">:</span>Plugin <span style="color: #0033ff; font-weight: bold;">in</span> _playerConfig<span style="color: #000066; font-weight: bold;">.</span>plugins <span style="color: #000000;">&#41;</span>
			<span style="color: #000000;">&#123;</span>
				<span style="color: #0033ff; font-weight: bold;">if</span><span style="color: #000000;">&#40;</span> plugin<span style="color: #000066; font-weight: bold;">.</span>path <span style="color: #000066; font-weight: bold;">&amp;&amp;</span> plugin<span style="color: #000066; font-weight: bold;">.</span>path<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">indexOf</span><span style="color: #000000;">&#40;</span> <span style="color: #990000;">&quot;AdvertisementPlugin&quot;</span> <span style="color: #000000;">&#41;</span> <span style="color: #000066; font-weight: bold;">&gt;</span>= <span style="color: #000000; font-weight:bold;">0</span> <span style="color: #000000;">&#41;</span>
				<span style="color: #000000;">&#123;</span>
					<span style="color: #009900; font-style: italic;">//Extract strings from normal metadata</span>
					<span style="color: #6699cc; font-weight: bold;">var</span> namespaces<span style="color: #000066; font-weight: bold;">:</span>Vector<span style="color: #000066; font-weight: bold;">.&lt;</span>String<span style="color: #000066; font-weight: bold;">&gt;</span> = plugin<span style="color: #000066; font-weight: bold;">.</span>resource<span style="color: #000066; font-weight: bold;">.</span>metadataNamespaceURLs<span style="color: #000066; font-weight: bold;">;</span>
					<span style="color: #0033ff; font-weight: bold;">for</span> <span style="color: #0033ff; font-weight: bold;">each</span><span style="color: #000000;">&#40;</span> <span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">String</span> <span style="color: #0033ff; font-weight: bold;">in</span> namespaces <span style="color: #000000;">&#41;</span>
					<span style="color: #000000;">&#123;</span>
						<span style="color: #6699cc; font-weight: bold;">var</span> meta<span style="color: #000066; font-weight: bold;">:</span>Metadata = Metadata<span style="color: #000000;">&#40;</span> plugin<span style="color: #000066; font-weight: bold;">.</span>resource<span style="color: #000066; font-weight: bold;">.</span>getMetadataValue<span style="color: #000000;">&#40;</span> <span style="color: #004993;">name</span> <span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
						<span style="color: #6699cc; font-weight: bold;">var</span> key<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">String</span> = meta<span style="color: #000066; font-weight: bold;">.</span>keys<span style="color: #000000;">&#91;</span><span style="color: #000000; font-weight:bold;">0</span><span style="color: #000000;">&#93;</span><span style="color: #000066; font-weight: bold;">;</span>
						<span style="color: #0033ff; font-weight: bold;">if</span><span style="color: #000000;">&#40;</span> <span style="color: #004993;">isNaN</span><span style="color: #000000;">&#40;</span> <span style="color: #004993;">Number</span><span style="color: #000000;">&#40;</span> key <span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#41;</span>
						<span style="color: #000000;">&#123;</span>
							<span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">value</span><span style="color: #000066; font-weight: bold;">:</span>URL = URL<span style="color: #000000;">&#40;</span> meta<span style="color: #000066; font-weight: bold;">.</span>getValue<span style="color: #000000;">&#40;</span> key <span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
							plugin<span style="color: #000066; font-weight: bold;">.</span>resource<span style="color: #000066; font-weight: bold;">.</span>addMetadataValue<span style="color: #000000;">&#40;</span> key<span style="color: #000066; font-weight: bold;">,</span> <span style="color: #004993;">value</span><span style="color: #000066; font-weight: bold;">.</span>rawUrl <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
						<span style="color: #000000;">&#125;</span>
						<span style="color: #0033ff; font-weight: bold;">else</span>
						<span style="color: #000000;">&#123;</span>
							plugin<span style="color: #000066; font-weight: bold;">.</span>resource<span style="color: #000066; font-weight: bold;">.</span>addMetadataValue<span style="color: #000000;">&#40;</span> <span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">,</span> <span style="color: #004993;">Number</span><span style="color: #000000;">&#40;</span> key <span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
						<span style="color: #000000;">&#125;</span>
					<span style="color: #000000;">&#125;</span>
					plugin<span style="color: #000066; font-weight: bold;">.</span>resource<span style="color: #000066; font-weight: bold;">.</span>addMetadataValue<span style="color: #000000;">&#40;</span> <span style="color: #990000;">&quot;MediaPlayer&quot;</span><span style="color: #000066; font-weight: bold;">,</span> _mediaPlayerCore <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
					plugin<span style="color: #000066; font-weight: bold;">.</span>resource<span style="color: #000066; font-weight: bold;">.</span>addMetadataValue<span style="color: #000000;">&#40;</span> <span style="color: #990000;">&quot;MediaContainer&quot;</span><span style="color: #000066; font-weight: bold;">,</span> _mediaPlayerShell <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
				<span style="color: #000000;">&#125;</span>
				_pluginLoader<span style="color: #000066; font-weight: bold;">.</span>addPlugin<span style="color: #000000;">&#40;</span> plugin <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
			<span style="color: #000000;">&#125;</span>
		<span style="color: #000000;">&#125;</span>
		override <span style="color: #0033ff; font-weight: bold;">protected</span> <span style="color: #339966; font-weight: bold;">function</span> _initMediaPlayer<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span>
		<span style="color: #000000;">&#123;</span>
			<span style="color: #009900; font-style: italic;">//block the default time this gets called</span>
		<span style="color: #000000;">&#125;</span>
		<span style="color: #0033ff; font-weight: bold;">private</span> <span style="color: #339966; font-weight: bold;">function</span> _onContainerAddChild<span style="color: #000000;">&#40;</span> event<span style="color: #000066; font-weight: bold;">:</span>LayoutTargetEvent <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span>
		<span style="color: #000000;">&#123;</span>
			_skin<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">visible</span> = <span style="color: #000000;">&#40;</span> MediaElementLayoutTarget<span style="color: #000000;">&#40;</span> event<span style="color: #000066; font-weight: bold;">.</span>layoutTarget <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">.</span>mediaElement == _mediaElement <span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #000000;">&#125;</span>
	<span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://nils.realeyesmedia.com/?feed=rss2&#038;p=110</wfw:commentRss>
		<slash:comments>4</slash:comments>
<enclosure url="http://gcdn.2mdn.net/MotifFiles/html/1379578/PID_938961_1237818260000_women.flv" length="730539" type="video/x-flv" />
		</item>
		<item>
		<title>Firebug was the Culprit</title>
		<link>http://nils.realeyesmedia.com/?p=107</link>
		<comments>http://nils.realeyesmedia.com/?p=107#comments</comments>
		<pubDate>Mon, 14 Mar 2011 21:20:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Firebug]]></category>
		<category><![CDATA[loader]]></category>
		<category><![CDATA[post]]></category>
		<category><![CDATA[services]]></category>

		<guid isPermaLink="false">http://nils.realeyesmedia.com/?p=107</guid>
		<description><![CDATA[I was attempting to send a POST request from Flash to a client&#8217;s service. I was told to send it like an HTML form sends a POST request. I tried sending a standard POST request with URLLoader, and got back &#8230; <a href="http://nils.realeyesmedia.com/?p=107">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I was attempting to send a POST request from Flash to a client&#8217;s service. I was told to send it like an HTML form sends a POST request. I tried sending a standard POST request with URLLoader, and got back a failure from the service. I opened up Firefox and Firebug to take a look. Sure enough, when I submitted an HTML POST request, there was this block of parameters that my request from Flash didn&#8217;t have. That must be what was going on.</p>
<p>So I switched my URLLoader out for an HTTPService and looked at changing the request headers around. All to no avail. I couldn&#8217;t get the request to show up the same as from an HTML form. After pounding my head against the problem for a long while, I went home.</p>
<p>The next morning I separated out my code into a separate project and ran it. Shazam! The missing parameters object was there. I checked the response and it was a success. I went back to my identical code in the project and ran it. The parameters object was gone &#8230; but the response was success. What?! It looks like I had gotten the service to work long before, but because I was seeing the different response, I assumed it was still failing as it had before. Firebug was giving me different information for the same call made from different projects. Firebug! I trusted you!</p>
<p>I guess the lesson is: Always check the response.</p>
]]></content:encoded>
			<wfw:commentRss>http://nils.realeyesmedia.com/?feed=rss2&#038;p=107</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Position is Relative. Trust the Rectangle.</title>
		<link>http://nils.realeyesmedia.com/?p=103</link>
		<comments>http://nils.realeyesmedia.com/?p=103#comments</comments>
		<pubDate>Tue, 25 Jan 2011 19:02:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[coordinates]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[relative]]></category>
		<category><![CDATA[vertical]]></category>
		<category><![CDATA[vgroup]]></category>

		<guid isPermaLink="false">http://nils.realeyesmedia.com/?p=103</guid>
		<description><![CDATA[Ever needed to get the real y position of a control in a vertical layout? I recently did. I had a form field in a dynamic form with a vertical layout. This field needed a custom tool tip to show &#8230; <a href="http://nils.realeyesmedia.com/?p=103">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Ever needed to get the real y position of a control in a vertical layout? I recently did. I had a form field in a dynamic form with a vertical layout. This field needed a custom tool tip to show up just beneath it vertically, but the tool tip needed to appear over everything else in the form. However, when I tried to get the y of the field, it kept coming back as 0, even though it should have been something more than 100.</p>
<p>After struggling with trying to get the y after all the layout updating had completed, I was stymied and started combing through the UIComponent methods looking for something to give me coordinates in a relative layout. Finally I gave getBounds a try. This did the trick. The rectangle returned by the method had the real y of the component. After a little localToGlobal action, I was able to get the needed y and position my little tool tip over the rest of the form.</p>
]]></content:encoded>
			<wfw:commentRss>http://nils.realeyesmedia.com/?feed=rss2&#038;p=103</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Get Building for Blackberry</title>
		<link>http://nils.realeyesmedia.com/?p=100</link>
		<comments>http://nils.realeyesmedia.com/?p=100#comments</comments>
		<pubDate>Thu, 18 Nov 2010 20:21:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[AIR]]></category>
		<category><![CDATA[Blackberry Playbook]]></category>

		<guid isPermaLink="false">http://nils.realeyesmedia.com/?p=100</guid>
		<description><![CDATA[Blackberry is coming out soon (Q1 2011) with their Playbook tablet. I&#8217;m stoked that it will be supporting apps built in AIR, among other languages. I&#8217;m glad to see that Adobe is carrying through with their vision to get Flash &#8230; <a href="http://nils.realeyesmedia.com/?p=100">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Blackberry is coming out soon (Q1 2011) with their Playbook tablet. I&#8217;m stoked that it will be supporting apps built in AIR, among other languages. I&#8217;m glad to see that Adobe is carrying through with their vision to get Flash on as many screens as they can.</p>
<p>I&#8217;m also stoked to see that if you get an app approved for the Blackberry App Store before the Playbook launches, you&#8217;ll <a title="Blackberry Playbook Developer Promotion" href="http://devblog.blackberry.com/2010/10/blackberry-playbook-developer-promotion-information/">get a free Playbook</a>. Now that&#8217;s a good incentive for me to get going, especially since Blackberry is currently waiving the fee for getting set up as an App Store developer. The device looks pretty sweet and sports a dual-core processor. It also weighs in under a pound.</p>
<p>I&#8217;ve gotten a start with the development for my app idea. I definitely recommend listening to the <a title="Blackberry Tablet OS Developer Webcast" href="http://us.blackberry.com/developers/tablet/devresources.jsp">webcast series on developing for the Blackberry Tablet OS</a> in order to get started. They have some good advice on setting up the dev environment. They also cover some basic development stuff. If you&#8217;re already familiar with AIR dev, you might want to also watch the <a title="MAX Blackberry AIR Dev session" href="http://2010.max.adobe.com/online/2010/MAX260_1288217641375UQJD">MAX session on Blackberry AIR dev</a> which focuses in on the Blackberry specifics. Another good starting point is to <a title="Blackberry Tablet SDK" href="http://us.blackberry.com/developers/tablet/">get the SDK and Playbook simulator</a>.</p>
<p>My app I have planned is niche enough that I&#8217;m not worried about anyone duplicating it, so I can safely recommend to all you developers to get developing and get your free Playbooks. I will note that I haven&#8217;t had the easiest time getting the dev set up. I can&#8217;t get debug to work on the simulator, but I can run my app on it. Thankfully the Blackberry developer community seems to be quite responsive in the <a title="Blackberry SDK for AIR forums" href="http://supportforums.blackberry.com/t5/Tablet-OS-SDK-for-Adobe-AIR/bd-p/tablet">forums for Blackberry AIR dev</a>.</p>
<p>Now get coding!</p>
]]></content:encoded>
			<wfw:commentRss>http://nils.realeyesmedia.com/?feed=rss2&#038;p=100</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

