16. Using the Yocto-GPS with AndroidTo tell the truth, Android is not a programming language, it is an operating system developed byGoogle for mobile appliances such as smart phones and tablets. But it so happens that underAndroid everything is programmed with the same programming language: Java. Nevertheless, theprogramming paradigms and the possibilities to access the hardware are slightly different fromclassical Java, and this justifies a separate chapter on Android programming.16.1. Native access and VirtualHubIn the opposite to the classical Java API, the Java for Android API can access USB modules natively.However, as there is no VirtualHub running under Android, it is not possible to remotely controlYoctopuce modules connected to a machine under Android. Naturally, the Java for Android APIremains perfectly able to connect itself to a VirtualHub running on another OS.16.2. Getting readyGo to the Yoctopuce web site and download the Java for Android programming library1. The library isavailable as source files, and also as a jar file. Connect your modules, decompress the library files inthe directory of your choice, and configure your Android programming environment so that it can findthem.To keep them simple, all the examples provided in this documentation are snippets of Androidapplications. You must integrate them in your own Android applications to make them work.However, your can find complete applications in the examples provided with the Java for Androidlibrary.16.3. CompatibilityIn an ideal world, you would only need to have a smart phone running under Android to be able tomake Yoctopuce modules work. Unfortunately, it is not quite so in the real world. A machine runningunder Android must fulfil to a few requirements to be able to manage Yoctopuce USB modulesnatively.1 www.yoctopuce.com/EN/libraries.phpwww.yoctopuce.com 105