From b450cea7e249d521ba9ebf3d186db45656b9fcc4 Mon Sep 17 00:00:00 2001 From: Matthias Melcher Date: Tue, 15 Jan 2019 01:22:18 +0100 Subject: Android: starting to use CMake to build AndroidStudio files. --- README.Android.md | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 README.Android.md (limited to 'README.Android.md') diff --git a/README.Android.md b/README.Android.md new file mode 100644 index 000000000..f9854045a --- /dev/null +++ b/README.Android.md @@ -0,0 +1,80 @@ +README.Android.md + +# Building and Running FLTK with Android Studio 3 + + +WARNING: FLTK FOR ANDROID IS WORK IN PROGRESS IN A PRETTY EARLY STAGE. + + +## Contents + +1. Building FLTK with Android Studio 3 +2. Extensions and limitation of FLTK on Android +3. Document History + + +## Building FLTK with Android Studio 3 + +There is no need to ever write a single line of Java. + +Download and install AndroidStudio on your developer machine. If you use +AndroidStudio for the first time, use the IDE to download and build the +"Native Plasm" sample app. In the process, all resources required to build +FLTK will be installed. Once Native Plasm runs on your emulator or physical +device, you are ready to install FLTK. + +Build FLTK for your native platform first using CMake. AndroidStudio will need a native +version of the user interface design tool _Fluid_. + +The following example is for the _Xcode_ IDE on _macOS_. The same should work for +other IDEs and Makefiles on other platforms that run _AndroidStudio_. + +```bash +git clone https://github.com/fltk/fltk.git fltk-1.4.git +cd fltk-1.4.git +mkdir build +cd build +mkdir Xcode +cd Xcode +cmake -G "Unix Makefiles" \ + -D OPTION_USE_SYSTEM_LIBJPEG=Off \ + -D OPTION_USE_SYSTEM_ZLIB=Off \ + -D OPTION_USE_SYSTEM_LIBPNG=Off \ + -D OPTION_CREATE_ANDROID_STUDIO_IDE=On \ + ../.. +``` +Note the last option, `-D OPTION_CREATE_ANDROID_STUDIO_IDE=On`. This option will +create the file needed to create an FLTK demo project in +`fltk-1.4.git/build/Xcode/AndroidStudio`. + +- open the `build/Xcode/AndroidStudio/` directory as a project in AndroidStudio3 + +- click "run"; the project should compile and run out of the box + + +## Extensions and limitation of FLTK on Android + +Android support for FLTK is in an early stage. As of January 2019, most +rendering works, fonts work, bitmaps and pixmaps work, clipping works, window +layering works, and mouse clicks and keyboard events are handled + +When loading fonts: + - font names starting with a $ will have the system font path inserted + - font names starting with an @ will be loaded via the Asset Manager + - all other names will be used verbatim + +Limitations: + - the screen size is currently fixed to 600x800 and is scaled up + - many many big and little functions are not yet implemented + + +## Document History + +Jan 15 2019 - matt: rewrote document to explain the new CMake process +Mar 29 2018 - matt: many graphics functions have been implemented, keyboard +Mar 17 2018 - matt: added Android extensions for fonts +Mar 12 2018 - matt: started list of limitation that serevs as information to the + user as much as a todo list for core developers +Mar 6 2018 - matt: moved project to ide/AndroidStudio3/ +Mar 2 2018 - matt: rewriting Android port and documentation from scratch +Feb 9 2016 - matt: recreated document with more warnings and active support -- cgit v1.2.3