Loading core/jni/android_media_ToneGenerator.cpp +15 −12 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ #include <jni.h> #include <nativehelper/JNIHelp.h> #include <nativehelper/ScopedUtfChars.h> #include "core_jni_helpers.h" #include <utils/Log.h> Loading Loading @@ -85,9 +86,12 @@ static void android_media_ToneGenerator_release(JNIEnv *env, jobject thiz) { delete lpToneGen; } static void android_media_ToneGenerator_native_setup(JNIEnv *env, jobject thiz, jint streamType, jint volume) { ToneGenerator *lpToneGen = new ToneGenerator((audio_stream_type_t) streamType, AudioSystem::linearToLog(volume), true); static void android_media_ToneGenerator_native_setup(JNIEnv *env, jobject thiz, jint streamType, jint volume, jstring opPackageName) { ScopedUtfChars opPackageNameStr(env, opPackageName); ToneGenerator *lpToneGen = new ToneGenerator((audio_stream_type_t)streamType, AudioSystem::linearToLog(volume), true /*threadCanCallJava*/, opPackageNameStr.c_str()); env->SetLongField(thiz, fields.context, 0); Loading Loading @@ -123,15 +127,14 @@ static void android_media_ToneGenerator_native_finalize(JNIEnv *env, // ---------------------------------------------------------------------------- static const JNINativeMethod gMethods[] = { { "startTone", "(II)Z", (void *)android_media_ToneGenerator_startTone }, static const JNINativeMethod gMethods[] = {{"startTone", "(II)Z", (void *)android_media_ToneGenerator_startTone}, {"stopTone", "()V", (void *)android_media_ToneGenerator_stopTone}, {"getAudioSessionId", "()I", (void *)android_media_ToneGenerator_getAudioSessionId}, {"release", "()V", (void *)android_media_ToneGenerator_release}, { "native_setup", "(II)V", (void *)android_media_ToneGenerator_native_setup }, { "native_finalize", "()V", (void *)android_media_ToneGenerator_native_finalize } }; {"native_setup", "(IILjava/lang/String;)V", (void *)android_media_ToneGenerator_native_setup}, {"native_finalize", "()V", (void *)android_media_ToneGenerator_native_finalize}}; int register_android_media_ToneGenerator(JNIEnv *env) { jclass clazz = FindClassOrDie(env, "android/media/ToneGenerator"); Loading media/java/android/media/ToneGenerator.java +10 −3 Original line number Diff line number Diff line Loading @@ -16,9 +16,11 @@ package android.media; import android.annotation.NonNull; import android.app.ActivityThread; import android.compat.annotation.UnsupportedAppUsage; import android.os.Build; import android.text.TextUtils; /** Loading Loading @@ -746,7 +748,7 @@ public class ToneGenerator * */ public ToneGenerator(int streamType, int volume) { native_setup(streamType, volume); native_setup(streamType, volume, getCurrentOpPackageName()); } /** Loading Loading @@ -880,7 +882,8 @@ public class ToneGenerator */ public native void release(); private native final void native_setup(int streamType, int volume); private native void native_setup( int streamType, int volume, @NonNull String opPackageName); private native final void native_finalize(); Loading @@ -895,6 +898,10 @@ public class ToneGenerator @Override protected void finalize() { native_finalize(); } private String getCurrentOpPackageName() { return TextUtils.emptyIfNull(ActivityThread.currentOpPackageName()); } @SuppressWarnings("unused") @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) private long mNativeContext; // accessed by native methods Loading Loading
core/jni/android_media_ToneGenerator.cpp +15 −12 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ #include <jni.h> #include <nativehelper/JNIHelp.h> #include <nativehelper/ScopedUtfChars.h> #include "core_jni_helpers.h" #include <utils/Log.h> Loading Loading @@ -85,9 +86,12 @@ static void android_media_ToneGenerator_release(JNIEnv *env, jobject thiz) { delete lpToneGen; } static void android_media_ToneGenerator_native_setup(JNIEnv *env, jobject thiz, jint streamType, jint volume) { ToneGenerator *lpToneGen = new ToneGenerator((audio_stream_type_t) streamType, AudioSystem::linearToLog(volume), true); static void android_media_ToneGenerator_native_setup(JNIEnv *env, jobject thiz, jint streamType, jint volume, jstring opPackageName) { ScopedUtfChars opPackageNameStr(env, opPackageName); ToneGenerator *lpToneGen = new ToneGenerator((audio_stream_type_t)streamType, AudioSystem::linearToLog(volume), true /*threadCanCallJava*/, opPackageNameStr.c_str()); env->SetLongField(thiz, fields.context, 0); Loading Loading @@ -123,15 +127,14 @@ static void android_media_ToneGenerator_native_finalize(JNIEnv *env, // ---------------------------------------------------------------------------- static const JNINativeMethod gMethods[] = { { "startTone", "(II)Z", (void *)android_media_ToneGenerator_startTone }, static const JNINativeMethod gMethods[] = {{"startTone", "(II)Z", (void *)android_media_ToneGenerator_startTone}, {"stopTone", "()V", (void *)android_media_ToneGenerator_stopTone}, {"getAudioSessionId", "()I", (void *)android_media_ToneGenerator_getAudioSessionId}, {"release", "()V", (void *)android_media_ToneGenerator_release}, { "native_setup", "(II)V", (void *)android_media_ToneGenerator_native_setup }, { "native_finalize", "()V", (void *)android_media_ToneGenerator_native_finalize } }; {"native_setup", "(IILjava/lang/String;)V", (void *)android_media_ToneGenerator_native_setup}, {"native_finalize", "()V", (void *)android_media_ToneGenerator_native_finalize}}; int register_android_media_ToneGenerator(JNIEnv *env) { jclass clazz = FindClassOrDie(env, "android/media/ToneGenerator"); Loading
media/java/android/media/ToneGenerator.java +10 −3 Original line number Diff line number Diff line Loading @@ -16,9 +16,11 @@ package android.media; import android.annotation.NonNull; import android.app.ActivityThread; import android.compat.annotation.UnsupportedAppUsage; import android.os.Build; import android.text.TextUtils; /** Loading Loading @@ -746,7 +748,7 @@ public class ToneGenerator * */ public ToneGenerator(int streamType, int volume) { native_setup(streamType, volume); native_setup(streamType, volume, getCurrentOpPackageName()); } /** Loading Loading @@ -880,7 +882,8 @@ public class ToneGenerator */ public native void release(); private native final void native_setup(int streamType, int volume); private native void native_setup( int streamType, int volume, @NonNull String opPackageName); private native final void native_finalize(); Loading @@ -895,6 +898,10 @@ public class ToneGenerator @Override protected void finalize() { native_finalize(); } private String getCurrentOpPackageName() { return TextUtils.emptyIfNull(ActivityThread.currentOpPackageName()); } @SuppressWarnings("unused") @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) private long mNativeContext; // accessed by native methods Loading