Added an option to define libraries to be loaded on Android in a derived class.

This way it is no more needed to modify SDLActivity.java to add own libraries.
This commit is contained in:
Philipp Wiesemann 2014-10-23 16:45:18 +02:00
parent 775a802627
commit bc382e390a
1 changed files with 20 additions and 10 deletions

View File

@ -54,18 +54,28 @@ public class SDLActivity extends Activity {
// Audio
protected static AudioTrack mAudioTrack;
/**
* This method is called by SDL before loading the native shared libraries.
* It can be overridden to provide names of shared libraries to be loaded.
* The default implementation returns the defaults. It never returns null.
* An array returned by a new implementation must at least contain "SDL2".
* Also keep in mind that the order the libraries are loaded may matter.
* @return names of shared libraries to be loaded (e.g. "SDL2", "main").
*/
protected String[] getLibraries() {
return new String[] {
"SDL2",
// "SDL2_image",
// "SDL2_mixer",
// "SDL2_net",
// "SDL2_ttf",
"main"
};
}
// Load the .so
public void loadLibraries() {
String AppLibraries[] = {
"SDL2",
// "SDL2_image",
// "SDL2_mixer",
// "SDL2_net",
// "SDL2_ttf",
"main"
};
for (String lib : AppLibraries) {
for (String lib : getLibraries()) {
System.loadLibrary(lib);
}
}