NOTICE: The inspector ANE is now deprecated. The ANE-LAB software will be using it internally and this repository will no longer be updated. You are encouraged to remove this ANE from your project and instead use the ANE-LAB.
If you are new to using AIR Native Extensions in your AIR projects, you may find it a bit confusing at first. Each ANE may have different minimum requirements which is not easy or possible at all to guess. In addition to platform min-requirements, different ANEs may depend on other ANEs in order to operate correctly. As an example, All our Firebase child ANEs are dependent on the Firebase Core ANE which itself depends on a lot of other dependency ANEs!
From experience, we noticed that a lot of new AIR developers are finding these relations confusing. Therefore, we decided to find a very effective solution to solve this issue in the easiest approach possible. We built the ANE-Inspector tool. You may find it ironic that an ANE is going to solve the problem of ANE-implementation 😀 trust me, this inspector ANE is different and it will help you in great ways. I will explain how it will assist you in simple terms below.
The Inspector Tool
The first thing to notice about this tool is that it runs on all platforms. Even if you run it on a simulator it won’t crash your app and instead it will gently tell you to move to a real device. You can use this feature for all the other MyFlashLabs ANEs too. Let me put it this way, there is a static method called “check” which you can pass in the name of the ANE class you wish to inspect and the inspector will return false if the min-platform requirements are not met. In this case, you know that you should not initialize the target ANE. On the other hand, if the “check” method returns true, you know you can safely initialize the target ANE in your AIR project.
Anytime that the “check” method returns false, the inspector will have the reason explained in simple words so you will know what to fix. For example, if an ANE needs to be run on at least iOS9 and you are trying to run it on an iOS8, the “check” method will return false and it also tells you the exact problem.
And this is not all. The inspector knows all of MyFlashLabs ANEs well enough that it can tell if the dependency ANEs for each target ANE is available or not. As an instance, our Facebook ANE is dependent on androidSupport.ane and overrideAir.ane. The inspector can check if these ANEs are added to your project or not (You can turn this on/off). If they are not, it will again return false on the “check” method and gently tell you the problem so you can fix it.
The ANE-Inspector Tool is free and accessible to be downloaded from our GitHub repository here.