summaryrefslogtreecommitdiff
path: root/Source/Android/jni/AndroidCommon
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2026-11-04 19:46:41 +0100
committerGitHub <noreply@github.com>2026-11-04 19:46:41 +0100
commit584366cb6859f5e371b1314bf0d92bb59d4d1b80 (patch)
treeeacc9d6f545183321717955ed5c4f0589d125564 /Source/Android/jni/AndroidCommon
parent112e1a436ae8c81ccd6d002460094172e72a600f (diff)
parent49ebb1cfea589e66134039d4ecca911e0e14af43 (diff)
Merge pull request #14794 from JosJuice/android-title-databaseHEADmaster
Android: Use TitleDatabase for game list
Diffstat (limited to 'Source/Android/jni/AndroidCommon')
-rw-r--r--Source/Android/jni/AndroidCommon/IDCache.cpp26
-rw-r--r--Source/Android/jni/AndroidCommon/IDCache.h4
2 files changed, 30 insertions, 0 deletions
diff --git a/Source/Android/jni/AndroidCommon/IDCache.cpp b/Source/Android/jni/AndroidCommon/IDCache.cpp
index 58cec02308..8d774dbbd9 100644
--- a/Source/Android/jni/AndroidCommon/IDCache.cpp
+++ b/Source/Android/jni/AndroidCommon/IDCache.cpp
@@ -151,6 +151,10 @@ static jclass s_audio_utils_class;
static jmethodID s_audio_utils_get_sample_rate;
static jmethodID s_audio_utils_get_frames_per_buffer;
+static jclass s_title_database_class;
+static jfieldID s_title_database_pointer;
+static jmethodID s_title_database_constructor;
+
namespace IDCache
{
JNIEnv* GetEnvForThread()
@@ -721,6 +725,21 @@ jmethodID GetAudioUtilsGetFramesPerBuffer()
return s_audio_utils_get_frames_per_buffer;
}
+jclass GetTitleDatabaseClass()
+{
+ return s_title_database_class;
+}
+
+jfieldID GetTitleDatabasePointer()
+{
+ return s_title_database_pointer;
+}
+
+jmethodID GetTitleDatabaseConstructor()
+{
+ return s_title_database_constructor;
+}
+
} // namespace IDCache
extern "C" {
@@ -1015,6 +1034,13 @@ JNIEXPORT jint JNI_OnLoad(JavaVM* vm, void* reserved)
env->GetStaticMethodID(audio_utils_class, "getFramesPerBuffer", "()I");
env->DeleteLocalRef(audio_utils_class);
+ const jclass title_database_class =
+ env->FindClass("org/dolphinemu/dolphinemu/model/TitleDatabase");
+ s_title_database_class = reinterpret_cast<jclass>(env->NewGlobalRef(title_database_class));
+ s_title_database_pointer = env->GetFieldID(title_database_class, "pointer", "J");
+ s_title_database_constructor = env->GetMethodID(title_database_class, "<init>", "(J)V");
+ env->DeleteLocalRef(title_database_class);
+
return JNI_VERSION;
}
diff --git a/Source/Android/jni/AndroidCommon/IDCache.h b/Source/Android/jni/AndroidCommon/IDCache.h
index 43c4f43585..1483b3bbd3 100644
--- a/Source/Android/jni/AndroidCommon/IDCache.h
+++ b/Source/Android/jni/AndroidCommon/IDCache.h
@@ -150,4 +150,8 @@ jclass GetAudioUtilsClass();
jmethodID GetAudioUtilsGetSampleRate();
jmethodID GetAudioUtilsGetFramesPerBuffer();
+jclass GetTitleDatabaseClass();
+jfieldID GetTitleDatabasePointer();
+jmethodID GetTitleDatabaseConstructor();
+
} // namespace IDCache