Adobe Captivate: What the heck is g_intAPIType?
If you spend any time using Adobe Captivate to create SCORM-conformant courses, you’re bound to have run into an issue or two that caused you to read some Captivate forum posts. Almost without fail, someone will mention that the solution to their problem was changing the value of the magical g_intAPIType JavaScript variable from 1 to 0 or from 0 to 1.
So what the heck is g_intAPIType, and why does changing it make a difference?
The short version is this: Captivate courses, when published for SCORM, typically use one of two communication methods: FSCommand or getURL. FSCommand works really well in some browsers, such as Internet Explorer, but has spotty support in others. getURL works in all browsers, but uses a more complicated communication system when sending data to your Captivate file from the LMS. It also makes a lot of clicking sounds.
Setting g_intAPIType to 0 means you’re forcing Captivate to use FSCommand in all browsers. Setting g_intAPIType to 1 means you’re forcing Captivate to use getURL in all browsers. If you don’t manually specify the value of g_intAPIType, Captivate’s SCORM template includes some browser sniffing that automatically sets g_intAPIType to 0 for Internet Explorer and 1 for all other browsers.
Want to know more about FSCommand versus getURL? Colin Moock wrote a good FSCommand tutorial that covers the basics.
Note: ExternalInterface has replaced both of these methods as the favored Flash-to-JavaScript communication method, but Captivate has not caught up yet.
What others are saying... (2 comments so far) You can follow all responses to this entry through this post's comments feed (RSS).
[...] Adobe Captivate: What the heck is g_intAPIType? – Nice explanation from Philip getURL works in all browsers, but uses a more complicated communication system when sending data to your Captivate file from the LMS. It also makes a lot of clicking sounds. [...]
[...] In this case changing some Javascript code embedded in the HTML page published by Captivate appears to bypass the true source of the problem, which is still unknown to me (and I frankly don’t care what it is, and apparently, neither does Adobe: Support suggested buying Captivate 5, which perpetuates the problem last time I checked. Fuel for a rant, which I don’t do on this site). More on this… [...]