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

Commit 89b88645 authored by William Escande's avatar William Escande Committed by Automerger Merge Worker
Browse files

Merge "Add `SystemApi` tag on getLastAudibleStreamVolume" am: f3a2e55f am:...

Merge "Add `SystemApi` tag on getLastAudibleStreamVolume" am: f3a2e55f am: ee0ad095 am: b8be957a am: c070d597

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1863058

Change-Id: Ia171d31f836848b8643e0d82895bda446082aab1
parents b66485f2 c070d597
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -5672,6 +5672,7 @@ package android.media {
    method @NonNull @RequiresPermission(android.Manifest.permission.CALL_AUDIO_INTERCEPTION) public android.media.AudioTrack getCallUplinkInjectionAudioTrack(@NonNull android.media.AudioFormat);
    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, "android.permission.QUERY_AUDIO_STATE"}) public int getDeviceVolumeBehavior(@NonNull android.media.AudioDeviceAttributes);
    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, "android.permission.QUERY_AUDIO_STATE"}) public java.util.List<android.media.AudioDeviceAttributes> getDevicesForAttributes(@NonNull android.media.AudioAttributes);
    method @RequiresPermission("android.permission.QUERY_AUDIO_STATE") public int getLastAudibleStreamVolume(int);
    method @IntRange(from=0) public long getMaxAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo);
    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMaxVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMinVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
+2 −1
Original line number Diff line number Diff line
@@ -1204,7 +1204,8 @@ public class AudioManager {
     *
     * @hide
     */
    @UnsupportedAppUsage
    @SystemApi
    @RequiresPermission("android.permission.QUERY_AUDIO_STATE")
    public int getLastAudibleStreamVolume(int streamType) {
        final IAudioService service = getService();
        try {
+8 −0
Original line number Diff line number Diff line
@@ -3239,6 +3239,13 @@ public class AudioService extends IAudioService.Stub
        }
    }

    private void enforceQueryStatePermission() {
        if (mContext.checkCallingOrSelfPermission(Manifest.permission.QUERY_AUDIO_STATE)
                != PackageManager.PERMISSION_GRANTED) {
            throw new SecurityException("Missing QUERY_AUDIO_STATE permissions");
        }
    }

    private void enforceQueryStateOrModifyRoutingPermission() {
        if (mContext.checkCallingOrSelfPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING)
                != PackageManager.PERMISSION_GRANTED
@@ -4143,6 +4150,7 @@ public class AudioService extends IAudioService.Stub

    /** Get last audible volume before stream was muted. */
    public int getLastAudibleStreamVolume(int streamType) {
        enforceQueryStatePermission();
        ensureValidStreamType(streamType);
        int device = getDeviceForStream(streamType);
        return (mStreamStates[streamType].getIndex(device) + 5) / 10;