diff options
| author | Svet Ganov <svetoslavganov@google.com> | 2015-04-28 12:03:28 -0700 |
|---|---|---|
| committer | Svetoslav <svetoslavganov@google.com> | 2015-04-28 16:31:58 -0700 |
| commit | fa5ecdc4ac6d7a8db2bb9e4a6a60a3189025df30 (patch) | |
| tree | ab6c59fa33dd8871ee7580e83dd405f2bf9d4347 /core/jni | |
| parent | 50ea942255e139d3ace81cdd3f90be75625edd69 (diff) | |
| download | frameworks_base-fa5ecdc4ac6d7a8db2bb9e4a6a60a3189025df30.zip frameworks_base-fa5ecdc4ac6d7a8db2bb9e4a6a60a3189025df30.tar.gz frameworks_base-fa5ecdc4ac6d7a8db2bb9e4a6a60a3189025df30.tar.bz2 | |
Respect the record audio app op - framework
Change-Id: I5696d2ef22738ccffaf8bd7a0ee68cbc3dea3bf1
Diffstat (limited to 'core/jni')
| -rw-r--r-- | core/jni/android_media_AudioRecord.cpp | 10 | ||||
| -rw-r--r-- | core/jni/android_media_RemoteDisplay.cpp | 8 |
2 files changed, 12 insertions, 6 deletions
diff --git a/core/jni/android_media_AudioRecord.cpp b/core/jni/android_media_AudioRecord.cpp index c384ef9..6afb226 100644 --- a/core/jni/android_media_AudioRecord.cpp +++ b/core/jni/android_media_AudioRecord.cpp @@ -26,6 +26,8 @@ #include <utils/Log.h> #include <media/AudioRecord.h> +#include <ScopedUtfChars.h> + #include "android_media_AudioFormat.h" #include "android_media_AudioErrors.h" @@ -146,7 +148,7 @@ static sp<AudioRecord> setAudioRecord(JNIEnv* env, jobject thiz, const sp<AudioR static jint android_media_AudioRecord_setup(JNIEnv *env, jobject thiz, jobject weak_this, jobject jaa, jint sampleRateInHertz, jint channelMask, jint channelIndexMask, - jint audioFormat, jint buffSizeInBytes, jintArray jSession) + jint audioFormat, jint buffSizeInBytes, jintArray jSession, jstring opPackageName) { //ALOGV(">> Entering android_media_AudioRecord_setup"); //ALOGV("sampleRate=%d, audioFormat=%d, channel mask=%x, buffSizeInBytes=%d", @@ -208,8 +210,10 @@ android_media_AudioRecord_setup(JNIEnv *env, jobject thiz, jobject weak_this, env->ReleasePrimitiveArrayCritical(jSession, nSession, 0); nSession = NULL; + ScopedUtfChars opPackageNameStr(env, opPackageName); + // create an uninitialized AudioRecord object - sp<AudioRecord> lpRecorder = new AudioRecord(); + sp<AudioRecord> lpRecorder = new AudioRecord(String16(opPackageNameStr.c_str())); audio_attributes_t *paa = NULL; // read the AudioAttributes values @@ -597,7 +601,7 @@ static JNINativeMethod gMethods[] = { // name, signature, funcPtr {"native_start", "(II)I", (void *)android_media_AudioRecord_start}, {"native_stop", "()V", (void *)android_media_AudioRecord_stop}, - {"native_setup", "(Ljava/lang/Object;Ljava/lang/Object;IIIII[I)I", + {"native_setup", "(Ljava/lang/Object;Ljava/lang/Object;IIIII[ILjava/lang/String;)I", (void *)android_media_AudioRecord_setup}, {"native_finalize", "()V", (void *)android_media_AudioRecord_finalize}, {"native_release", "()V", (void *)android_media_AudioRecord_release}, diff --git a/core/jni/android_media_RemoteDisplay.cpp b/core/jni/android_media_RemoteDisplay.cpp index e2bba30..9bc223b 100644 --- a/core/jni/android_media_RemoteDisplay.cpp +++ b/core/jni/android_media_RemoteDisplay.cpp @@ -134,8 +134,10 @@ private: // ---------------------------------------------------------------------------- -static jlong nativeListen(JNIEnv* env, jobject remoteDisplayObj, jstring ifaceStr) { +static jlong nativeListen(JNIEnv* env, jobject remoteDisplayObj, jstring ifaceStr, + jstring opPackageNameStr) { ScopedUtfChars iface(env, ifaceStr); + ScopedUtfChars opPackageName(env, opPackageNameStr); sp<IServiceManager> sm = defaultServiceManager(); sp<IMediaPlayerService> service = interface_cast<IMediaPlayerService>( @@ -146,7 +148,7 @@ static jlong nativeListen(JNIEnv* env, jobject remoteDisplayObj, jstring ifaceSt } sp<NativeRemoteDisplayClient> client(new NativeRemoteDisplayClient(env, remoteDisplayObj)); - sp<IRemoteDisplay> display = service->listenForRemoteDisplay( + sp<IRemoteDisplay> display = service->listenForRemoteDisplay(String16(opPackageName.c_str()), client, String8(iface.c_str())); if (display == NULL) { ALOGE("Media player service rejected request to listen for remote display '%s'.", @@ -176,7 +178,7 @@ static void nativeDispose(JNIEnv* env, jobject remoteDisplayObj, jlong ptr) { // ---------------------------------------------------------------------------- static JNINativeMethod gMethods[] = { - {"nativeListen", "(Ljava/lang/String;)J", + {"nativeListen", "(Ljava/lang/String;Ljava/lang/String;)J", (void*)nativeListen }, {"nativeDispose", "(J)V", (void*)nativeDispose }, |
