This page documents how 0 A.D. might be ported to the [http://www.android.com/ Android] platform. = Target devices = == Samsung Galaxy Nexus == * 720×1280 px at 316 ppi * !16:9 aspect-ratio * 16M colors * Multi-touch, capacitive touchscreen = Design = == User Interface == Due to the vastly different controls and form factor, the whole user interface of the game needs to be rethought for the Android edition. == Libraries == Android-compatible replacements must be found for all [http://trac.wildfiregames.com/wiki/BuildInstructions#Linux the dependencies of the PC edition]. This is what we have so far: * GCC - the Android NDK provides its own ndk-build tool for compiling. * Subversion - assuming this is just for obtaining the source, this can be done on a PC workstation. * SDL - is already [http://www.libsdl.org/tmp/SDL/README.android ported to Android]. * Boost - there is [https://github.com/MysticTreeGames/Boost-for-Android an unofficial port]. * zlib - libz is part of the native NDK. * libpng - there's unofficial ports like [https://github.com/julienr/libpng-android this one]. * libxml2 - Google publishes [https://github.com/android/platform_external_libxml2 a tree] that is tuned to compile on Android. * OpenGL - this must be ported to OpenGL ES. * OpenAL - this should be ported to OpenSL ES. * zip - not sure which exact library this refers to. * libogg - may be covered by Tremor (below). * libvorbis - this can be [http://www.badlogicgames.com/wordpress/?p=451 done with Tremor]. * libcurl - may be ported [http://thesoftwarerogue.blogspot.com/2010/05/porting-of-libcurl-to-android-os-using.html like this]. * Gamin - don't know about this one. * CMake - all build tools are provided by the NDK.