aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2024-02-27 15:02:33 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2024-02-27 15:02:33 +0000
commit8bd88d2e4ed35be12fb3a4f4edafc1b72f2ccc89 (patch)
treee51346e17da34361506cb3eedb33fb4945fb5b3e
parent77508803835f68c459c7191e2c741468fc0b7cc7 (diff)
parent65658c002bdb729dbb62607277cd0f7d21a5738c (diff)
downloadgamesdk-snap-temp-L50200030002190522.tar.gz
Merge cherrypicks of ['android-review.googlesource.com/2962714', 'android-review.googlesource.com/2962715'] into android-games-sdk-games-memory-advice-release.snap-temp-L88700030002184924snap-temp-L83300030002207629snap-temp-L50200030002190522android-games-sdk-games-memory-advice-release
Change-Id: I035528d45e28f161d911d6833028dbe4b8175173
-rw-r--r--games-memory-advice/CMakeLists.txt2
-rw-r--r--src/common/JNIUtil.h5
2 files changed, 5 insertions, 2 deletions
diff --git a/games-memory-advice/CMakeLists.txt b/games-memory-advice/CMakeLists.txt
index 1503e75c..6a092ea6 100644
--- a/games-memory-advice/CMakeLists.txt
+++ b/games-memory-advice/CMakeLists.txt
@@ -95,7 +95,7 @@ file(APPEND ${mri_file} "end\n")
set(output_archive_placeholder_file ${CMAKE_CURRENT_BINARY_DIR}/${output_archive}.placeholder.cpp)
add_custom_command(OUTPUT ${output_archive_placeholder_file}
- COMMAND touch ${output_archive_placeholder_file}
+ COMMAND echo > ${output_archive_placeholder_file}
DEPENDS memory_advice_static_pre)
diff --git a/src/common/JNIUtil.h b/src/common/JNIUtil.h
index 702e24d0..2907eba6 100644
--- a/src/common/JNIUtil.h
+++ b/src/common/JNIUtil.h
@@ -24,6 +24,7 @@
#include <string>
#include "Log.h"
+#include "system_utils.h"
// The code in this file will dynamically load Java classes from a binary
// resource linked to the library. The binary data is in DEX format, accessible
@@ -145,7 +146,9 @@ static jclass loadClass(JNIEnv* env, jobject activity, const char* name,
classLoaderObj, loadClass, dexLoaderClassName));
env->DeleteLocalRef(dexLoaderClassName);
- if (env->ExceptionCheck() || !imclassloaderClass) {
+ int sdkVersion = gamesdk::GetSystemPropAsInt("ro.build.version.sdk");
+
+ if (env->ExceptionCheck() || !imclassloaderClass || sdkVersion < 26) {
env->ExceptionClear();
// For older SDK versions <26, where InMemoryDexClassLoader is not
// available