From 1f90d232e3b4911f725fe22489aaa2cc2253426d Mon Sep 17 00:00:00 2001 From: dhewg Date: Mon, 7 Mar 2011 19:52:44 +0100 Subject: ANDROID: Save the game when the process is paused The OS can kill the activity at will after onPause() or onStop() to free up memory for other application. Provide a parachute when the engine allows it. --- backends/platform/android/jni.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'backends/platform/android/jni.cpp') diff --git a/backends/platform/android/jni.cpp b/backends/platform/android/jni.cpp index 73b74394c0..6bfe9c2095 100644 --- a/backends/platform/android/jni.cpp +++ b/backends/platform/android/jni.cpp @@ -631,7 +631,13 @@ void JNI::setPause(JNIEnv *env, jobject self, jboolean value) { if (g_engine) { LOGD("pauseEngine: %d", value); + g_engine->pauseEngine(value); + + if (value && + g_engine->hasFeature(Engine::kSupportsSavingDuringRuntime) && + g_engine->canSaveGameStateCurrently()) + g_engine->saveGameState(0, "Android parachute"); } pause = value; -- cgit v1.2.3