Android Operating System
Android is a software stack for mobile devices that includes an operating system, middle-ware and key applications. The Android SDK (Android software development kit) provides tools and APIs necessary to begin developing applications on the Android platform using the Java programming language[3]. Android SDK is easy to integrate with Eclipse, that is one of the most popular programming environments for Java. Eclipse is a program, that allow to create, compile and debug Java applications and integrate a lot of useful tools for Java developer. All instructions how to install Android SDK with Eclipse IDE can be found here: Android SDK with Eclipse IDE
Android application is a program written in Java, that is separated from operating system and use just resources that are necessary to work and declared before in special configuration file AndroidManifest. This gives better level of security and assure that application will not affect core of the system. Thanks to this separation it is very difficult to write virus or any other malicious program that affect Android system core. In case of Euro banknote recognition application is used just Camera (android.hardware.camera) and SDK.
In Android is possible to use almost all Java libraries. For implementation of image processing algorithms the presented program used JJIL (Jon's Java Image Library), because has a structure easy to extend and it is a native library written in Java.
JJIL is particularly targeted towards mobile applications. It includes interfaces for image convertation to and from native formats for J2ME (Java for mobile phones), Android, and J2SE (Java Standard Edition for other operating systems like Windows, Linux and MacOS)