README.android
changeset 4727 8087bb208acf
parent 4726 9076cdb027af
child 4954 144d9df7e611
     1.1 --- a/README.android	Tue Aug 17 15:35:56 2010 +1200
     1.2 +++ b/README.android	Tue Aug 17 17:28:14 2010 +1200
     1.3 @@ -1,16 +1,45 @@
     1.4 -==============================================================================
     1.5 +================================================================================
     1.6  Simple DirectMedia Layer for Android
     1.7 -==============================================================================
     1.8 +================================================================================
     1.9  
    1.10  Requirements: Android NDK r4 or later
    1.11  
    1.12 +================================================================================
    1.13 + How the port works
    1.14 +================================================================================
    1.15 +
    1.16 +- Android applications are Java-based, optionally with parts written in C
    1.17 +- As SDL apps are C-based, we use a small Java shim that uses JNI to talk to 
    1.18 +the SDL library
    1.19 +- This means that your application C code must be placed inside an android 
    1.20 +Java project, along with some C support code that communicates with Java
    1.21 +- This eventually produces a standard Android .apk package
    1.22 +
    1.23 +
    1.24 +
    1.25 +
    1.26 +
    1.27 +
    1.28 +================================================================================
    1.29 + Building an app
    1.30 +================================================================================
    1.31 +
    1.32  Instructions:
    1.33  1. Edit android/config.cfg to point to the location of the NDK
    1.34  2. Run 'make -f Makefile.android'. If all goes well, libsdl.a should be created
    1.35 -3. Place your application source files in android/testproject/jni
    1.36 -4. Run 'ndk-build' (a script provided by the NDK). This compiles the C source
    1.37 -4. Run 'ant' in android/testproject. This compiles the .java and eventually 
    1.38 +3. Place your application source files in android/project/jni
    1.39 +4. Edit the Android.mk to include your source files
    1.40 +5. Run 'ndk-build' (a script provided by the NDK). This compiles the C source
    1.41 +6. Run 'ant' in android/testproject. This compiles the .java and eventually 
    1.42  creates a .apk with the C source embedded
    1.43 -6. 'ant install' will push the apk to the device or emulator (if connected)
    1.44 +7. 'ant install' will push the apk to the device or emulator (if connected)
    1.45  
    1.46  
    1.47 +
    1.48 +
    1.49 +================================================================================
    1.50 + Known issues
    1.51 +================================================================================
    1.52 +
    1.53 +- SDL audio (although it's mostly written, just not working properly yet)
    1.54 +- TODO. I'm sure there's a bunch more stuff I haven't thought of