X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?p=xscreensaver;a=blobdiff_plain;f=android%2FREADME;h=35b7b426d48d058fb55c1884df0210cceb55070d;hp=501aafe453fa4ad7b4559d4613fc74a3099837f2;hb=d1ae2829ff0fd2a96c16a0c8c5420efaa47d7b30;hpb=7edd66e6bd3209013ee059819747b10b5835635b diff --git a/android/README b/android/README index 501aafe4..35b7b426 100644 --- a/android/README +++ b/android/README @@ -7,3 +7,80 @@ If you're messing with this, please let us know! dennis@panaceasupplies.com jwz@jwz.org + + +To build: + + Install JDK 7 (http://www.oracle.com/technetwork/java/javase/downloads/) + Install Android Studio (http://developer.android.com/sdk/) + Install Android NDK (http://developer.android.com/ndk/downloads) + Rename or link the "android-ndk-*" directory to "ndk" inside your + $ANDROID_HOME (the "sdk/" directory that is the parent of + "build-tools/", etc.) That is, it should be "sdk/ndk/". + + set $ANDROID_HOME to where your SDK is installed, or + set "sdk.dir" in project/local.properties. + On MacOS, the value you want is probably ~/Library/Android/sdk/ + Also set "ndk.dir" in project/local.properties. + + cd android + make + + If it fails, try a "make clean" and then try make again. + Make sure you have the needed Android SDK platform versions installed. + + Hopefully an "xscreensaver-debug.apk" file will appear in + android/project/xscreensaver/build/outputs/apk/. + + Load that onto your device and go to: + Settings / Display / Wallpaper / Live Wallpapers. + + To launch the emulator: + $ANDROID_HOME/sdk/tools/emulator -avd Nexus_5_API_21_x86 + + To load it into the currently-running emulator: + $ANDROID_HOME/platform-tools/adb install -r \ + project/xscreensaver/build/outputs/apk/xscreensaver-debug.apk + + +The files in these subdirectories are source code, more or less: + + project/xscreensaver/*.xml + project/xscreensaver/src/org/jwz/xscreensaver/ + project/GLWallpaperService/ (a third-party library, unchanged) + +These directories are boilerplate for Android apps: + + project/xscreensaver/res/layout/ + project/xscreensaver/res/values/ + project/xscreensaver/res/xml/ + project/xscreensaver/res/drawable-ldpi/ + project/xscreensaver/res/drawable-mdpi/ + project/xscreensaver/res/drawable-hdpi/ + project/xscreensaver/res/drawable/thumbnail.png + +These are files that we generate: + + project/xscreensaver/src/org/jwz/xscreensaver/gen/ + +These too (intermediate build files): + + .gradle/ + gen/ + project/GLWallpaperService/build/ + project/build/ + project/xscreensaver/build/ + project/xscreensaver/libs/ + project/xscreensaver/obj/ + project/xscreensaver/res/xml/ + +These are files that we *will* generate but don't yet: + + project/xscreensaver/res/drawable/*.png + XScreenSaverView.c + +When adding a new hack, edit: + + project/xscreensaver/jni/Android.mk + project/xscreensaver/build.gradle + generate_files.pl