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

Commit 1d55f0d4 authored by Andy Hung's avatar Andy Hung Committed by Android (Google) Code Review
Browse files

Merge "AudioRecord: Fix permission documention" into sc-dev

parents 51158471 7ef5694e
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -20183,7 +20183,7 @@ package android.media {
  }
  }
  public class AudioRecord implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection {
  public class AudioRecord implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection {
    ctor public AudioRecord(int, int, int, int, int) throws java.lang.IllegalArgumentException;
    ctor @RequiresPermission(android.Manifest.permission.RECORD_AUDIO) public AudioRecord(int, int, int, int, int) throws java.lang.IllegalArgumentException;
    method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler);
    method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler);
    method @Deprecated public void addOnRoutingChangedListener(android.media.AudioRecord.OnRoutingChangedListener, android.os.Handler);
    method @Deprecated public void addOnRoutingChangedListener(android.media.AudioRecord.OnRoutingChangedListener, android.os.Handler);
    method protected void finalize();
    method protected void finalize();
@@ -20244,7 +20244,7 @@ package android.media {
  public static class AudioRecord.Builder {
  public static class AudioRecord.Builder {
    ctor public AudioRecord.Builder();
    ctor public AudioRecord.Builder();
    method public android.media.AudioRecord build() throws java.lang.UnsupportedOperationException;
    method @RequiresPermission(android.Manifest.permission.RECORD_AUDIO) public android.media.AudioRecord build() throws java.lang.UnsupportedOperationException;
    method public android.media.AudioRecord.Builder setAudioFormat(@NonNull android.media.AudioFormat) throws java.lang.IllegalArgumentException;
    method public android.media.AudioRecord.Builder setAudioFormat(@NonNull android.media.AudioFormat) throws java.lang.IllegalArgumentException;
    method @NonNull public android.media.AudioRecord.Builder setAudioPlaybackCaptureConfig(@NonNull android.media.AudioPlaybackCaptureConfiguration);
    method @NonNull public android.media.AudioRecord.Builder setAudioPlaybackCaptureConfig(@NonNull android.media.AudioPlaybackCaptureConfiguration);
    method public android.media.AudioRecord.Builder setAudioSource(int) throws java.lang.IllegalArgumentException;
    method public android.media.AudioRecord.Builder setAudioSource(int) throws java.lang.IllegalArgumentException;
+1 −1
Original line number Original line Diff line number Diff line
@@ -4938,7 +4938,7 @@ package android.media {
  }
  }
  public class AudioRecord implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection {
  public class AudioRecord implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection {
    ctor public AudioRecord(android.media.AudioAttributes, android.media.AudioFormat, int, int) throws java.lang.IllegalArgumentException;
    ctor @RequiresPermission(android.Manifest.permission.RECORD_AUDIO) public AudioRecord(android.media.AudioAttributes, android.media.AudioFormat, int, int) throws java.lang.IllegalArgumentException;
  }
  }
  public static class AudioRecord.Builder {
  public static class AudioRecord.Builder {
+12 −1
Original line number Original line Diff line number Diff line
@@ -21,6 +21,7 @@ import android.annotation.FloatRange;
import android.annotation.IntDef;
import android.annotation.IntDef;
import android.annotation.NonNull;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.Nullable;
import android.annotation.RequiresPermission;
import android.annotation.SystemApi;
import android.annotation.SystemApi;
import android.annotation.TestApi;
import android.annotation.TestApi;
import android.app.ActivityThread;
import android.app.ActivityThread;
@@ -67,7 +68,14 @@ import java.util.concurrent.Executor;
 * fill with the new audio data. The size of this buffer, specified during the construction,
 * fill with the new audio data. The size of this buffer, specified during the construction,
 * determines how long an AudioRecord can record before "over-running" data that has not
 * determines how long an AudioRecord can record before "over-running" data that has not
 * been read yet. Data should be read from the audio hardware in chunks of sizes inferior to
 * been read yet. Data should be read from the audio hardware in chunks of sizes inferior to
 * the total recording buffer size.
 * the total recording buffer size.</p>
 * <p>
 * Applications creating an AudioRecord instance need
 * {@link android.Manifest.permission#RECORD_AUDIO} or the Builder will throw
 * {@link java.lang.UnsupportedOperationException} on
 * {@link android.media.AudioRecord.Builder#build build()},
 * and the constructor will return an instance in state
 * {@link #STATE_UNINITIALIZED}.</p>
 */
 */
public class AudioRecord implements AudioRouting, MicrophoneDirection,
public class AudioRecord implements AudioRouting, MicrophoneDirection,
        AudioRecordingMonitor, AudioRecordingMonitorClient
        AudioRecordingMonitor, AudioRecordingMonitorClient
@@ -297,6 +305,7 @@ public class AudioRecord implements AudioRouting, MicrophoneDirection,
     *   smaller than getMinBufferSize() will result in an initialization failure.
     *   smaller than getMinBufferSize() will result in an initialization failure.
     * @throws java.lang.IllegalArgumentException
     * @throws java.lang.IllegalArgumentException
     */
     */
    @RequiresPermission(android.Manifest.permission.RECORD_AUDIO)
    public AudioRecord(int audioSource, int sampleRateInHz, int channelConfig, int audioFormat,
    public AudioRecord(int audioSource, int sampleRateInHz, int channelConfig, int audioFormat,
            int bufferSizeInBytes)
            int bufferSizeInBytes)
    throws IllegalArgumentException {
    throws IllegalArgumentException {
@@ -334,6 +343,7 @@ public class AudioRecord implements AudioRouting, MicrophoneDirection,
     * @throws IllegalArgumentException
     * @throws IllegalArgumentException
     */
     */
    @SystemApi
    @SystemApi
    @RequiresPermission(android.Manifest.permission.RECORD_AUDIO)
    public AudioRecord(AudioAttributes attributes, AudioFormat format, int bufferSizeInBytes,
    public AudioRecord(AudioAttributes attributes, AudioFormat format, int bufferSizeInBytes,
            int sessionId) throws IllegalArgumentException {
            int sessionId) throws IllegalArgumentException {
        mRecordingState = RECORDSTATE_STOPPED;
        mRecordingState = RECORDSTATE_STOPPED;
@@ -718,6 +728,7 @@ public class AudioRecord implements AudioRouting, MicrophoneDirection,
         *     were incompatible, or if they are not supported by the device,
         *     were incompatible, or if they are not supported by the device,
         *     or if the device was not available.
         *     or if the device was not available.
         */
         */
        @RequiresPermission(android.Manifest.permission.RECORD_AUDIO)
        public AudioRecord build() throws UnsupportedOperationException {
        public AudioRecord build() throws UnsupportedOperationException {
            if (mAudioPlaybackCaptureConfiguration != null) {
            if (mAudioPlaybackCaptureConfiguration != null) {
                return buildAudioPlaybackCaptureRecord();
                return buildAudioPlaybackCaptureRecord();