diff options
author | Eino-Ville Talvala <etalvala@google.com> | 2013-02-15 18:30:15 -0800 |
---|---|---|
committer | Eino-Ville Talvala <etalvala@google.com> | 2013-02-25 09:27:42 -0800 |
commit | 788717ca599c714d58b2cb5deea1d37b4a711c07 (patch) | |
tree | 6e13d87e3e3ac8ee9543715536fbe2d74a737e47 /core/jni/android_hardware_Camera.cpp | |
parent | ff4fcdb98c9575642c48f1daeafff4b257769e81 (diff) | |
download | frameworks_base-788717ca599c714d58b2cb5deea1d37b4a711c07.zip frameworks_base-788717ca599c714d58b2cb5deea1d37b4a711c07.tar.gz frameworks_base-788717ca599c714d58b2cb5deea1d37b4a711c07.tar.bz2 |
Camera and MediaRecorder: Support AppOps
- Allow media processes to update AppOps state
- Pass package name to media services
Bug: 8181262
Change-Id: I115d39f0b306cb9eb7cd3d3e663c680b7322fd3f
Diffstat (limited to 'core/jni/android_hardware_Camera.cpp')
-rw-r--r-- | core/jni/android_hardware_Camera.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/core/jni/android_hardware_Camera.cpp b/core/jni/android_hardware_Camera.cpp index c0e12da..362d9a4 100644 --- a/core/jni/android_hardware_Camera.cpp +++ b/core/jni/android_hardware_Camera.cpp @@ -465,9 +465,16 @@ static void android_hardware_Camera_getCameraInfo(JNIEnv *env, jobject thiz, // connect to camera service static void android_hardware_Camera_native_setup(JNIEnv *env, jobject thiz, - jobject weak_this, jint cameraId) + jobject weak_this, jint cameraId, jstring clientPackageName) { - sp<Camera> camera = Camera::connect(cameraId); + // Convert jstring to String16 + const char16_t *rawClientName = env->GetStringChars(clientPackageName, NULL); + jsize rawClientNameLen = env->GetStringLength(clientPackageName); + String16 clientName(rawClientName, rawClientNameLen); + env->ReleaseStringChars(clientPackageName, rawClientName); + + sp<Camera> camera = Camera::connect(cameraId, clientName, + Camera::USE_CALLING_UID); if (camera == NULL) { jniThrowRuntimeException(env, "Fail to connect to camera service"); @@ -859,7 +866,7 @@ static JNINativeMethod camMethods[] = { "(ILandroid/hardware/Camera$CameraInfo;)V", (void*)android_hardware_Camera_getCameraInfo }, { "native_setup", - "(Ljava/lang/Object;I)V", + "(Ljava/lang/Object;ILjava/lang/String;)V", (void*)android_hardware_Camera_native_setup }, { "native_release", "()V", |