The top answer to this question (ADK and Eclipse woes - com.android.future and USBAccessory?) solved my issue (in a specific case), but I wondered why I needed to use the Google API and not the default Android API for implementing a IOIO board via USB. Why does this feature exist in the Google API 2.3.3 and not Android API 2.3.3 (since the android operating system is capable of supporting it... did the Android API developers just not add some additional functionality that makes the IOIO plugin tick?), and why is it not required to use the Google API for 4.2? Is this likely specific to the IOIO interface code I am using (https://github.com/ytai/ioio/wiki/Downloads#client-software-and-ioio-application-firmware-images)?
I would like to further understand the reason behind this so that I can better predict if I encounter a similar issue in the future with other libraries.