aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArtyom Palvelev <artyompp@google.com>2023-01-03 18:43:30 +0000
committerArtyom Palvelev <artyompp@google.com>2023-01-04 07:42:56 +0000
commitfb459260978b04c208566b86181aa2069dec6a8a (patch)
tree9a7c9b1adb4503d53b4074d676984c034f480dff
parent1db664430a8b4c4d7304367156fca67ed7ff99e0 (diff)
downloadgamesdk-fb459260978b04c208566b86181aa2069dec6a8a.tar.gz
fix for fontWeightAdjustment not being available in old APIs
Bug: 263285534 Test: Build and run AGDK samples Change-Id: Iae97612daef4df07c7f2f5270117521fc0a82de1
-rw-r--r--game-activity/prefab-src/modules/game-activity/include/game-activity/GameActivity.cpp31
1 files changed, 23 insertions, 8 deletions
diff --git a/game-activity/prefab-src/modules/game-activity/include/game-activity/GameActivity.cpp b/game-activity/prefab-src/modules/game-activity/include/game-activity/GameActivity.cpp
index 3c0e762a..702f0b89 100644
--- a/game-activity/prefab-src/modules/game-activity/include/game-activity/GameActivity.cpp
+++ b/game-activity/prefab-src/modules/game-activity/include/game-activity/GameActivity.cpp
@@ -593,14 +593,21 @@ static void onStop_native(JNIEnv *env, jobject javaGameActivity, jlong handle) {
}
static void readConfigurationValues(NativeCode *code, jobject javaConfig) {
- gConfiguration.colorMode =
- code->env->GetIntField(javaConfig, gConfigurationClassInfo.colorMode);
+ if (gConfigurationClassInfo.colorMode != NULL) {
+ gConfiguration.colorMode = code->env->GetIntField(
+ javaConfig, gConfigurationClassInfo.colorMode);
+ }
+
gConfiguration.densityDpi =
code->env->GetIntField(javaConfig, gConfigurationClassInfo.densityDpi);
gConfiguration.fontScale =
code->env->GetFloatField(javaConfig, gConfigurationClassInfo.fontScale);
- gConfiguration.fontWeightAdjustment = code->env->GetIntField(
- javaConfig, gConfigurationClassInfo.fontWeightAdjustment);
+
+ if (gConfigurationClassInfo.fontWeightAdjustment != NULL) {
+ gConfiguration.fontWeightAdjustment = code->env->GetIntField(
+ javaConfig, gConfigurationClassInfo.fontWeightAdjustment);
+ }
+
gConfiguration.hardKeyboardHidden = code->env->GetIntField(
javaConfig, gConfigurationClassInfo.hardKeyboardHidden);
gConfiguration.mcc =
@@ -1055,14 +1062,22 @@ extern "C" int GameActivity_register(JNIEnv *env) {
jclass configuration_class;
FIND_CLASS(configuration_class, kConfigurationPathName);
- GET_FIELD_ID(gConfigurationClassInfo.colorMode, configuration_class,
- "colorMode", "I");
+
+ if (android_get_device_api_level() >= 26) {
+ GET_FIELD_ID(gConfigurationClassInfo.colorMode, configuration_class,
+ "colorMode", "I");
+ }
+
GET_FIELD_ID(gConfigurationClassInfo.densityDpi, configuration_class,
"densityDpi", "I");
GET_FIELD_ID(gConfigurationClassInfo.fontScale, configuration_class,
"fontScale", "F");
- GET_FIELD_ID(gConfigurationClassInfo.fontWeightAdjustment,
- configuration_class, "fontWeightAdjustment", "I");
+
+ if (android_get_device_api_level() >= 31) {
+ GET_FIELD_ID(gConfigurationClassInfo.fontWeightAdjustment,
+ configuration_class, "fontWeightAdjustment", "I");
+ }
+
GET_FIELD_ID(gConfigurationClassInfo.hardKeyboardHidden,
configuration_class, "hardKeyboardHidden", "I");
GET_FIELD_ID(gConfigurationClassInfo.keyboard, configuration_class,