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

Commit f45f9cc2 authored by Steve Statia's avatar Steve Statia
Browse files

Add @RequiresPermission annotation for Call#enterBackgroundAudioProcessing()

Permissions needed are CAPTURE_AUDIO_OUTPUT and MODIFY_AUDIO_ROUTING. Intdef annotations for @AudioProcessingUseCase are also being add to Call#enterBackgroundAudioProcessing() and
Connection#getAudioProcessingUseCase() parameters and return values.

Flag: com.android.server.telecom.flags.enable_audio_processing_use_case
Test: cts tests
Bug: 425684919
Change-Id: I546f640c3104a95c20164bf35c3e9162aa357ebe
parent 87569c9e
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -14786,7 +14786,7 @@ package android.telecom {
  public final class Call {
    method @Deprecated public void addListener(android.telecom.Call.Listener);
    method @Deprecated @FlaggedApi("com.android.server.telecom.flags.enable_audio_processing_use_case") public void enterBackgroundAudioProcessing();
    method @FlaggedApi("com.android.server.telecom.flags.enable_audio_processing_use_case") public void enterBackgroundAudioProcessing(int);
    method @FlaggedApi("com.android.server.telecom.flags.enable_audio_processing_use_case") @RequiresPermission(allOf={android.Manifest.permission.CAPTURE_AUDIO_OUTPUT, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public void enterBackgroundAudioProcessing(int);
    method public void exitBackgroundAudioProcessing(boolean);
    method @Deprecated public void removeListener(android.telecom.Call.Listener);
    field @Deprecated public static final int STATE_PRE_DIAL_WAIT = 8; // 0x8
+5 −1
Original line number Diff line number Diff line
@@ -16,10 +16,12 @@

package android.telecom;

import android.Manifest;
import android.annotation.FlaggedApi;
import android.annotation.IntDef;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.RequiresPermission;
import android.annotation.SystemApi;
import android.annotation.TestApi;
import android.compat.annotation.UnsupportedAppUsage;
@@ -1891,8 +1893,10 @@ public final class Call {
     * @hide
     */
    @SystemApi
    @RequiresPermission(allOf = {Manifest.permission.CAPTURE_AUDIO_OUTPUT,
        Manifest.permission.MODIFY_AUDIO_ROUTING})
    @FlaggedApi(Flags.FLAG_ENABLE_AUDIO_PROCESSING_USE_CASE)
    public void enterBackgroundAudioProcessing(int useCase) {
    public void enterBackgroundAudioProcessing(@AudioProcessingUseCase int useCase) {
        if (mState != STATE_ACTIVE && mState != STATE_RINGING) {
            throw new IllegalStateException("Call must be active or ringing");
        }
+1 −1
Original line number Diff line number Diff line
@@ -2777,7 +2777,7 @@ public abstract class Connection extends Conferenceable {
     *     {@link #STATE_AUDIO_PROCESSING}
     */
    @FlaggedApi(Flags.FLAG_ENABLE_AUDIO_PROCESSING_USE_CASE)
    public final int getAudioProcessingUseCase() {
    public final @Call.AudioProcessingUseCase int getAudioProcessingUseCase() {
        return mAudioProcessingUseCase;
    }