mirror of
https://github.com/libsdl-org/SDL.git
synced 2026-07-09 02:39:42 +00:00
7a6eed4ec89d51c640575ad5e50bb36ce5f3aa07
Allow Android embedders to use SDL without the full video/audio Java layer by gating subsystem-specific code behind SDL_VIDEO_DISABLED and SDL_AUDIO_DISABLED preprocessor flags. This enables applications that only need joystick/gamepad support (e.g. Qt-based apps like QGroundControl) to build SDL without shipping stub Java classes for unused subsystems. Changes: - Split SDLActivity JNI method table into core (lifecycle, hints, permissions) and video (surface, input, clipboard, orientation) - Gate SDLAudioManager and SDLInputConnection JNI registration - Make checkJNIReady() subsystem-aware: no longer requires mAudioManagerClass when SDL_AUDIO_DISABLED - Group method ID resolution by subsystem in nativeSetupJNI() - Guard all video/audio function implementations and declarations - Keep display orientation accessors always available (needed by camera) - Add subsystem-selective SDL.setupJNI(int)/initialize(int) to SDL.java with backwards-compatible zero-arg overloads - Guard SDL_VIDEO_DRIVER_ANDROID and related defines in SDL_build_config_android.h
Simple DirectMedia Layer (SDL for short) is a cross-platform library designed to make it easy to write multi-media software, such as games and emulators.
You can find the latest release and additional information at: https://www.libsdl.org/
Installation instructions and a quick introduction is available in INSTALL.md
This library is distributed under the terms of the zlib license, available in LICENSE.txt.
Enjoy!
Sam Lantinga (slouken@libsdl.org)
Languages
C
87.9%
C++
4%
Objective-C
3.4%
CMake
1.7%
Java
0.8%
Other
1.9%