Skip to content

Commit

Permalink
update android build to SDL 2.0.8 stable.
Browse files Browse the repository at this point in the history
fixed home -> pause and resume

remains last issue: app close on power button
  • Loading branch information
White Dragon committed Mar 17, 2018
1 parent 12c978c commit dbd6dc5
Show file tree
Hide file tree
Showing 79 changed files with 6,642 additions and 11,951 deletions.
22 changes: 14 additions & 8 deletions engine/android/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,23 @@
android:versionCode="1"
android:versionName="1.4.2"
android:installLocation="preferExternal">

<!-- Android 4.1.2 -->
<uses-sdk android:minSdkVersion="16" />

<!-- OpenGL ES 2.0 -->
<uses-feature android:glEsVersion="0x00020000" />

<!-- Allow writing to external storage -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<!-- CRxTRDude - Allows the use of a wake lock -->
<uses-permission android:name="android.permission.WAKE_LOCK" />

<application android:label="@string/app_name"
android:icon="@drawable/icon"
android:allowBackup="true"
android:hardwareAccelerated="true"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
<activity android:name="org.libsdl.app.SDLActivity"
android:label="@string/app_name"
Expand All @@ -20,12 +34,4 @@
</activity>
</application>

<!-- Android 4.0 -->
<uses-sdk android:minSdkVersion="14" />

<!-- Allow writing to external storage -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<!-- CRxTRDude - Allows the use of a wake lock -->
<uses-permission android:name="android.permission.WAKE_LOCK" />
</manifest>
16 changes: 8 additions & 8 deletions engine/android/jni/openbor/SDL_android_main.cpp
Original file line number Diff line number Diff line change
@@ -1,37 +1,37 @@

#include "SDL_config.h"
/*#include "SDL_config.h"
#ifdef __ANDROID__
/* Include the SDL main definition header */
#include "SDL_main.h"
// Include the SDL main definition header
#include "SDL_main.h"*/

/*******************************************************************************
Functions called by JNI
*******************************************************************************/
#include <jni.h>
/*#include <jni.h>
// Called before SDL_main() to initialize JNI bindings in SDL library
extern "C" void SDL_Android_Init(JNIEnv* env, jclass cls);
// Start up the SDL app
extern "C" void Java_org_libsdl_app_SDLActivity_nativeInit(JNIEnv* env, jclass cls, jobject obj)
{
/* This interface could expand with ABI negotiation, calbacks, etc. */
// This interface could expand with ABI negotiation, calbacks, etc.
SDL_Android_Init(env, cls);
SDL_SetMainReady();
/* Run the application code! */
// Run the application code!
char *argv[2];
argv[0] = strdup("SDL_app");
argv[1] = NULL;
SDL_main(1, argv);
/* Do not issue an exit or the whole application will terminate instead of just the SDL thread */
// Do not issue an exit or the whole application will terminate instead of just the SDL thread
//exit(status);
}
#endif /* __ANDROID__ */
#endif*/ // __ANDROID__

/* vi: set ts=4 sw=4 expandtab: */
70 changes: 20 additions & 50 deletions engine/android/jni/openbor/include/sdl/SDL.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
Simple DirectMedia Layer
Copyright (C) 1997-2013 Sam Lantinga <[email protected]>
Copyright (C) 1997-2018 Sam Lantinga <[email protected]>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
Expand All @@ -25,44 +25,9 @@
* Main include header for the SDL library
*/

/**
* \mainpage Simple DirectMedia Layer (SDL)
*
* http://www.libsdl.org/
*
* \section intro_sec Introduction
*
* Simple DirectMedia Layer is a cross-platform development library designed
* to provide low level access to audio, keyboard, mouse, joystick, and
* graphics hardware via OpenGL and Direct3D. It is used by video playback
* software, emulators, and popular games including Valve's award winning
* catalog and many Humble Bundle games.
*
* SDL officially supports Windows, Mac OS X, Linux, iOS, and Android.
* Support for other platforms may be found in the source code.
*
* SDL is written in C, works natively with C++, and there are bindings
* available for several other languages, including C# and Python.
*
* This library is distributed under the zlib license, which can be found
* in the file "COPYING.txt".
*
* The best way to learn how to use SDL is to check out the header files in
* the "include" subdirectory and the programs in the "test" subdirectory.
* The header files and test programs are well commented and always up to date.
* More documentation and FAQs are available online at:
* http://wiki.libsdl.org/
*
* If you need help with the library, or just want to discuss SDL related
* issues, you can join the developers mailing list:
* http://www.libsdl.org/mailing-list.php
*
* Enjoy!
* Sam Lantinga ([email protected])
*/

#ifndef _SDL_H
#define _SDL_H
#ifndef SDL_h_
#define SDL_h_

#include "SDL_main.h"
#include "SDL_stdinc.h"
Expand All @@ -75,17 +40,18 @@
#include "SDL_error.h"
#include "SDL_events.h"
#include "SDL_filesystem.h"
#include "SDL_joystick.h"
#include "SDL_gamecontroller.h"
#include "SDL_haptic.h"
#include "SDL_hints.h"
#include "SDL_joystick.h"
#include "SDL_loadso.h"
#include "SDL_log.h"
#include "SDL_messagebox.h"
#include "SDL_mutex.h"
#include "SDL_power.h"
#include "SDL_render.h"
#include "SDL_rwops.h"
#include "SDL_shape.h"
#include "SDL_system.h"
#include "SDL_thread.h"
#include "SDL_timer.h"
Expand All @@ -107,14 +73,14 @@ extern "C" {
* specify the subsystems which you will be using in your application.
*/
/* @{ */
#define SDL_INIT_TIMER 0x00000001
#define SDL_INIT_AUDIO 0x00000010
#define SDL_INIT_VIDEO 0x00000020 /**< SDL_INIT_VIDEO implies SDL_INIT_EVENTS */
#define SDL_INIT_JOYSTICK 0x00000200 /**< SDL_INIT_JOYSTICK implies SDL_INIT_EVENTS */
#define SDL_INIT_HAPTIC 0x00001000
#define SDL_INIT_GAMECONTROLLER 0x00002000 /**< SDL_INIT_GAMECONTROLLER implies SDL_INIT_JOYSTICK */
#define SDL_INIT_EVENTS 0x00004000
#define SDL_INIT_NOPARACHUTE 0x00100000 /**< Don't catch fatal signals */
#define SDL_INIT_TIMER 0x00000001u
#define SDL_INIT_AUDIO 0x00000010u
#define SDL_INIT_VIDEO 0x00000020u /**< SDL_INIT_VIDEO implies SDL_INIT_EVENTS */
#define SDL_INIT_JOYSTICK 0x00000200u /**< SDL_INIT_JOYSTICK implies SDL_INIT_EVENTS */
#define SDL_INIT_HAPTIC 0x00001000u
#define SDL_INIT_GAMECONTROLLER 0x00002000u /**< SDL_INIT_GAMECONTROLLER implies SDL_INIT_JOYSTICK */
#define SDL_INIT_EVENTS 0x00004000u
#define SDL_INIT_NOPARACHUTE 0x00100000u /**< compatibility; this flag is ignored. */
#define SDL_INIT_EVERYTHING ( \
SDL_INIT_TIMER | SDL_INIT_AUDIO | SDL_INIT_VIDEO | SDL_INIT_EVENTS | \
SDL_INIT_JOYSTICK | SDL_INIT_HAPTIC | SDL_INIT_GAMECONTROLLER \
Expand All @@ -123,13 +89,17 @@ extern "C" {

/**
* This function initializes the subsystems specified by \c flags
* Unless the ::SDL_INIT_NOPARACHUTE flag is set, it will install cleanup
* signal handlers for some commonly ignored fatal signals (like SIGSEGV).
*/
extern DECLSPEC int SDLCALL SDL_Init(Uint32 flags);

/**
* This function initializes specific SDL subsystems
*
* Subsystem initialization is ref-counted, you must call
* SDL_QuitSubSystem() for each SDL_InitSubSystem() to correctly
* shutdown a subsystem manually (or call SDL_Quit() to force shutdown).
* If a subsystem is already loaded then this call will
* increase the ref-count and return.
*/
extern DECLSPEC int SDLCALL SDL_InitSubSystem(Uint32 flags);

Expand Down Expand Up @@ -158,6 +128,6 @@ extern DECLSPEC void SDLCALL SDL_Quit(void);
#endif
#include "close_code.h"

#endif /* _SDL_H */
#endif /* SDL_h_ */

/* vi: set ts=4 sw=4 expandtab: */
Loading

0 comments on commit dbd6dc5

Please sign in to comment.