Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 58a795ba authored by Edwin Wong's avatar Edwin Wong
Browse files

provideKeyResponse to send an event to test AMediaDrm_setOnEventListener.

The drm plugin provides a listener, we send a kDrmPluginEventVendorDefined
if provideKeyResponse succeeds.

The reason for sending kDrmPluginEventVendorDefined is because
kDrmPluginEventKeysChange currently does not have ndk api support.

This addition is intended for testing AMediaDrm_setOnEventListener only.

Test: cherrypick go/ag/1598039 and go/ag/1630324

ANDROID_BUILD_TOP= ./android-cts/tools/cts-tradefed run cts -m CtsMediaTestCases --test android.media.cts.NativeClearKeySystemTest#testClearKeyPlaybackCenc

Test passes and look for "EVENT_VENDOR_DEFINED received" in the debug log.

bug: 32648208
Change-Id: Iec98b856e8d4ce888f8a1cd2568a3dee871effc5
parent 83cb4283
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -75,6 +75,8 @@ status_t DrmPlugin::provideKeyResponse(
    }
    status_t res = session->provideKeyResponse(response);
    if (res == android::OK) {
        // This is for testing AMediaDrm_setOnEventListener only.
        sendEvent(kDrmPluginEventVendorDefined, 0, &scope, NULL);
        keySetId.clear();
    }
    return res;
@@ -90,6 +92,8 @@ status_t DrmPlugin::getPropertyString(
        value = "ClearKey CDM";
    } else if (name == "algorithms") {
        value = "";
    } else if (name == "listenerTestSupport") {
        value = "true";
    } else {
        ALOGE("App requested unknown string property %s", name.string());
        return android::ERROR_DRM_CANNOT_HANDLE;