summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Ivan Chiang <chiangi@google.com> 2021-01-25 16:50:31 +0800
committer Ivan Chiang <chiangi@google.com> 2021-02-08 02:16:12 +0000
commitabd79dfd062606f68779d1b0ff0330a906e8abc9 (patch)
tree318c569aea310a225d95aa377bc69fed5a843563
parent0fd5c8c1576ad0801aa45d17b15733666f17abcb (diff)
Add Recordings folder to support recording type
Bug: 161526501 Test: build and format virtual sd card Change-Id: I320179dd9ca30007e1e5fc9c1e0fb64b9635a186
-rw-r--r--core/api/current.txt1
-rw-r--r--core/java/android/os/Environment.java20
2 files changed, 21 insertions, 0 deletions
diff --git a/core/api/current.txt b/core/api/current.txt
index f5c67c170931..013423d1261c 100644
--- a/core/api/current.txt
+++ b/core/api/current.txt
@@ -30589,6 +30589,7 @@ package android.os {
field public static String DIRECTORY_NOTIFICATIONS;
field public static String DIRECTORY_PICTURES;
field public static String DIRECTORY_PODCASTS;
+ field @NonNull public static String DIRECTORY_RECORDINGS;
field public static String DIRECTORY_RINGTONES;
field public static String DIRECTORY_SCREENSHOTS;
field public static final String MEDIA_BAD_REMOVAL = "bad_removal";
diff --git a/core/java/android/os/Environment.java b/core/java/android/os/Environment.java
index 518e29d51091..62951246a43b 100644
--- a/core/java/android/os/Environment.java
+++ b/core/java/android/os/Environment.java
@@ -18,6 +18,7 @@ package android.os;
import android.Manifest;
import android.annotation.NonNull;
+import android.annotation.SuppressLint;
import android.annotation.SystemApi;
import android.annotation.TestApi;
import android.app.AppGlobals;
@@ -836,6 +837,21 @@ public class Environment {
public static String DIRECTORY_AUDIOBOOKS = "Audiobooks";
/**
+ * Standard directory in which to place any audio files which are
+ * recordings.
+ */
+ @NonNull
+ // The better way is that expose a static method getRecordingDirectories.
+ // But since it's an existing API surface and developers already
+ // used to DIRECTORY_* constants, we should keep using this pattern
+ // for consistency. We use SuppressLint here to avoid exposing a final
+ // field. A final field will prevent us from ever changing the value of
+ // DIRECTORY_RECORDINGS. Not that it's likely that we will ever need to
+ // change it, but it's better to have such option.
+ @SuppressLint({"MutableBareField", "AllUpper"})
+ public static String DIRECTORY_RECORDINGS = "Recordings";
+
+ /**
* List of standard storage directories.
* <p>
* Each of its values have its own constant:
@@ -851,6 +867,7 @@ public class Environment {
* <li>{@link #DIRECTORY_DCIM}
* <li>{@link #DIRECTORY_DOCUMENTS}
* <li>{@link #DIRECTORY_AUDIOBOOKS}
+ * <li>{@link #DIRECTORY_RECORDINGS}
* </ul>
* @hide
*/
@@ -866,6 +883,7 @@ public class Environment {
DIRECTORY_DCIM,
DIRECTORY_DOCUMENTS,
DIRECTORY_AUDIOBOOKS,
+ DIRECTORY_RECORDINGS,
};
/**
@@ -891,6 +909,7 @@ public class Environment {
/** {@hide} */ public static final int HAS_DCIM = 1 << 8;
/** {@hide} */ public static final int HAS_DOCUMENTS = 1 << 9;
/** {@hide} */ public static final int HAS_AUDIOBOOKS = 1 << 10;
+ /** {@hide} */ public static final int HAS_RECORDINGS = 1 << 11;
/** {@hide} */ public static final int HAS_ANDROID = 1 << 16;
/** {@hide} */ public static final int HAS_OTHER = 1 << 17;
@@ -921,6 +940,7 @@ public class Environment {
else if (DIRECTORY_DCIM.equals(name)) res |= HAS_DCIM;
else if (DIRECTORY_DOCUMENTS.equals(name)) res |= HAS_DOCUMENTS;
else if (DIRECTORY_AUDIOBOOKS.equals(name)) res |= HAS_AUDIOBOOKS;
+ else if (DIRECTORY_RECORDINGS.equals(name)) res |= HAS_RECORDINGS;
else if (DIRECTORY_ANDROID.equals(name)) res |= HAS_ANDROID;
else res |= HAS_OTHER;
}