2010-08-17 17:28:14 +12:00
|
|
|
================================================================================
|
2010-08-17 15:35:56 +12:00
|
|
|
Simple DirectMedia Layer for Android
|
2010-08-17 17:28:14 +12:00
|
|
|
================================================================================
|
2010-08-14 16:17:17 +12:00
|
|
|
|
2011-01-06 16:11:21 -08:00
|
|
|
Requirements: Android SDK and Android NDK r4 or later
|
|
|
|
http://developer.android.com/
|
2010-08-14 16:17:17 +12:00
|
|
|
|
2010-08-17 17:28:14 +12:00
|
|
|
================================================================================
|
|
|
|
How the port works
|
|
|
|
================================================================================
|
|
|
|
|
|
|
|
- Android applications are Java-based, optionally with parts written in C
|
|
|
|
- As SDL apps are C-based, we use a small Java shim that uses JNI to talk to
|
|
|
|
the SDL library
|
|
|
|
- This means that your application C code must be placed inside an android
|
|
|
|
Java project, along with some C support code that communicates with Java
|
|
|
|
- This eventually produces a standard Android .apk package
|
|
|
|
|
|
|
|
|
2011-01-06 16:11:21 -08:00
|
|
|
================================================================================
|
|
|
|
Building an app
|
|
|
|
================================================================================
|
2010-08-17 17:28:14 +12:00
|
|
|
|
2011-01-06 16:11:21 -08:00
|
|
|
Instructions:
|
|
|
|
1. Copy the android-project directory wherever you want your Android project to go
|
|
|
|
2. Move this SDL directory into the <project>/jni directory
|
|
|
|
3. Place your application source files in the <project>/jni/src directory
|
|
|
|
4. Edit <project>/jni/src/Android.mk to include your source files
|
|
|
|
5. Run 'ndk-build' (a script provided by the NDK). This compiles the C source
|
2010-08-17 17:28:14 +12:00
|
|
|
|
2011-01-06 16:11:21 -08:00
|
|
|
If you want to use the Eclipse IDE, skip to the Eclipse section below.
|
|
|
|
|
|
|
|
6. Edit <project>/local.properties to point to the Android SDK directory
|
|
|
|
7. Run 'ant debug' in android/project. This compiles the .java and eventually
|
|
|
|
creates a .apk with the native code embedded
|
|
|
|
8. 'ant install' will push the apk to the device or emulator (if connected)
|
2010-08-17 17:28:14 +12:00
|
|
|
|
|
|
|
|
|
|
|
================================================================================
|
2011-01-06 16:11:21 -08:00
|
|
|
Using Eclipse
|
2010-08-17 17:28:14 +12:00
|
|
|
================================================================================
|
|
|
|
|
2011-01-06 16:11:21 -08:00
|
|
|
NEED CONTENT
|
2010-08-17 17:28:14 +12:00
|
|
|
|
|
|
|
|
2011-01-06 16:11:21 -08:00
|
|
|
================================================================================
|
|
|
|
Loading files
|
|
|
|
================================================================================
|
|
|
|
|
|
|
|
NEED CONTENT
|
|
|
|
|
|
|
|
|
|
|
|
================================================================================
|
|
|
|
Troubleshooting
|
|
|
|
================================================================================
|
|
|
|
|
|
|
|
NEED CONTENT
|
2010-08-17 17:28:14 +12:00
|
|
|
|
2010-08-14 16:17:17 +12:00
|
|
|
|
2010-08-17 17:28:14 +12:00
|
|
|
================================================================================
|
|
|
|
Known issues
|
|
|
|
================================================================================
|
2010-08-14 16:17:17 +12:00
|
|
|
|
2010-08-17 17:28:14 +12:00
|
|
|
- SDL audio (although it's mostly written, just not working properly yet)
|
|
|
|
- TODO. I'm sure there's a bunch more stuff I haven't thought of
|