Fix MmtpRecordEvent and TsRecordEvent NoSuchMethodError crash in jni

Due to Tuner 1.1 extension, these two java classes should have had
more parameters in their class descriptors.

Test: atest android.media.tv.tuner.cts
Bug: 181152149
Change-Id: I6c8e5996a449b272e1b712135f28bee428d776a8
This commit is contained in:
Amy Zhang
2021-02-25 10:44:11 -08:00
parent 272c776dbb
commit 952c2a99de

View File

@@ -561,7 +561,7 @@ jobjectArray FilterClientCallbackImpl::getTsRecordEvent(
const std::vector<DemuxFilterEventExt::Event>& eventsExt) {
JNIEnv *env = AndroidRuntime::getJNIEnv();
jclass eventClazz = env->FindClass("android/media/tv/tuner/filter/TsRecordEvent");
jmethodID eventInit = env->GetMethodID(eventClazz, "<init>", "(IIIJJ)V");
jmethodID eventInit = env->GetMethodID(eventClazz, "<init>", "(IIIJJI)V");
for (int i = 0; i < events.size(); i++) {
auto event = events[i];
@@ -614,7 +614,7 @@ jobjectArray FilterClientCallbackImpl::getMmtpRecordEvent(
const std::vector<DemuxFilterEventExt::Event>& eventsExt) {
JNIEnv *env = AndroidRuntime::getJNIEnv();
jclass eventClazz = env->FindClass("android/media/tv/tuner/filter/MmtpRecordEvent");
jmethodID eventInit = env->GetMethodID(eventClazz, "<init>", "(IJIJ)V");
jmethodID eventInit = env->GetMethodID(eventClazz, "<init>", "(IJIJII)V");
for (int i = 0; i < events.size(); i++) {
auto event = events[i];