OSDN Git Service

Resolve feedback from API review: MediaDrm
authorJeff Tinker <jtinker@google.com>
Wed, 27 Feb 2019 02:11:37 +0000 (18:11 -0800)
committerJeff Tinker <jtinker@google.com>
Thu, 21 Mar 2019 23:38:07 +0000 (23:38 +0000)
bug:123939401
test:media playback test
Change-Id: I8166535fe537a633a0ddac917217a5ac627f4ca8

api/current.txt
media/java/android/media/MediaDrm.java
media/jni/android_media_MediaDrm.cpp

index 7228ef4..f1529aa 100644 (file)
@@ -24942,6 +24942,7 @@ package android.media {
     ctor public MediaDrm.SessionException(int, @Nullable String);
     method public int getErrorCode();
     field public static final int ERROR_RESOURCE_CONTENTION = 1; // 0x1
+    field public static final int ERROR_UNKNOWN = 0; // 0x0
   }
 
   public class MediaDrmException extends java.lang.Exception {
index aeb77cf..005f2d4 100644 (file)
@@ -304,6 +304,11 @@ public final class MediaDrm implements AutoCloseable {
         }
 
         /**
+         * The SessionException has an unknown error code.
+         */
+        public static final int ERROR_UNKNOWN = 0;
+
+        /**
          * This indicates that apps using MediaDrm sessions are
          * temporarily exceeding the capacity of available crypto
          * resources. The app should retry the operation later.
index d7ab854..f412161 100644 (file)
@@ -149,6 +149,7 @@ struct SessionExceptionFields {
 };
 
 struct SessionExceptionErrorCodes {
+    jint kErrorUnknown;
     jint kResourceContention;
 } gSessionExceptionErrorCodes;
 
@@ -888,6 +889,8 @@ static void android_media_MediaDrm_native_init(JNIEnv *env) {
     gFields.sessionException.classId = static_cast<jclass>(env->NewGlobalRef(clazz));
     GET_FIELD_ID(gFields.sessionException.errorCode, clazz, "mErrorCode", "I");
 
+    GET_STATIC_FIELD_ID(field, clazz, "ERROR_UNKNOWN", "I");
+    gSessionExceptionErrorCodes.kErrorUnknown = env->GetStaticIntField(clazz, field);
     GET_STATIC_FIELD_ID(field, clazz, "ERROR_RESOURCE_CONTENTION", "I");
     gSessionExceptionErrorCodes.kResourceContention = env->GetStaticIntField(clazz, field);
 }