summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorTaras Antoshchuk <tantoshchuk@google.com>2020-03-20 21:04:15 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2020-03-20 21:04:15 +0000
commit2ecaeeba03b38f9921aa70061888d859f45e4d13 (patch)
treea005e2acf01783e17dbdb8ef8083a59cd2307d47 /core/java/android
parent119bf8f7722fe31d74cc75b89f3fd3633fda7047 (diff)
parent8a6002477d2e7c18354f0113b48ca182a93c7b45 (diff)
Merge "Change dynamic MIME feature accodring to API review" into rvc-dev
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/app/ApplicationPackageManager.java17
-rw-r--r--core/java/android/content/pm/IPackageManager.aidl2
-rw-r--r--core/java/android/content/pm/PackageManager.java30
3 files changed, 17 insertions, 32 deletions
diff --git a/core/java/android/app/ApplicationPackageManager.java b/core/java/android/app/ApplicationPackageManager.java
index 0b0a803c7dcd..a1ec27b3e9f7 100644
--- a/core/java/android/app/ApplicationPackageManager.java
+++ b/core/java/android/app/ApplicationPackageManager.java
@@ -3358,31 +3358,20 @@ public class ApplicationPackageManager extends PackageManager {
}
}
- public void setMimeGroup(String mimeGroup, Set<String> mimeTypes) {
- try {
- mPM.setMimeGroup(mContext.getPackageName(), mimeGroup,
- new ArrayList<String>(mimeTypes));
- } catch (RemoteException e) {
- throw e.rethrowAsRuntimeException();
- }
- }
-
@Override
- public void clearMimeGroup(String mimeGroup) {
+ public void setMimeGroup(String mimeGroup, Set<String> mimeTypes) {
try {
- mPM.clearMimeGroup(mContext.getPackageName(), mimeGroup);
+ mPM.setMimeGroup(mContext.getPackageName(), mimeGroup, new ArrayList<>(mimeTypes));
} catch (RemoteException e) {
throw e.rethrowAsRuntimeException();
}
}
+ @NonNull
@Override
public Set<String> getMimeGroup(String group) {
try {
List<String> mimeGroup = mPM.getMimeGroup(mContext.getPackageName(), group);
- if (mimeGroup == null) {
- return null;
- }
return new ArraySet<>(mimeGroup);
} catch (RemoteException e) {
throw e.rethrowAsRuntimeException();
diff --git a/core/java/android/content/pm/IPackageManager.aidl b/core/java/android/content/pm/IPackageManager.aidl
index b52034f637a4..5bad055810cc 100644
--- a/core/java/android/content/pm/IPackageManager.aidl
+++ b/core/java/android/content/pm/IPackageManager.aidl
@@ -743,8 +743,6 @@ interface IPackageManager {
void setMimeGroup(String packageName, String group, in List<String> mimeTypes);
- void clearMimeGroup(String packageName, String group);
-
List<String> getMimeGroup(String packageName, String group);
boolean isAutoRevokeWhitelisted(String packageName);
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index 2c7902239854..03b99ed7ffc4 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -7894,10 +7894,14 @@ public abstract class PackageManager {
}
/**
- * Sets MIME group's MIME types
+ * Sets MIME group's MIME types.
*
- * @param mimeGroup MIME group to modify
- * @param mimeTypes new MIME types contained by MIME group
+ * Libraries should use a reverse-DNS prefix followed by a ':' character and library-specific
+ * group name to avoid namespace collisions, e.g. "com.example:myFeature".
+ *
+ * @param mimeGroup MIME group to modify.
+ * @param mimeTypes new MIME types contained by MIME group.
+ * @throws IllegalArgumentException if the MIME group was not declared in the manifest.
*/
public void setMimeGroup(@NonNull String mimeGroup, @NonNull Set<String> mimeTypes) {
throw new UnsupportedOperationException(
@@ -7905,22 +7909,16 @@ public abstract class PackageManager {
}
/**
- * Clears MIME group by removing all MIME types from it
+ * Gets all MIME types contained by MIME group.
*
- * @param mimeGroup MIME group to clear
- */
- public void clearMimeGroup(@NonNull String mimeGroup) {
- throw new UnsupportedOperationException(
- "clearMimeGroup not implemented in subclass");
- }
-
- /**
- * Gets all MIME types that MIME group contains
+ * Libraries should use a reverse-DNS prefix followed by a ':' character and library-specific
+ * group name to avoid namespace collisions, e.g. "com.example:myFeature".
*
- * @return MIME types contained by the MIME group,
- * or null if the MIME group was not declared in the manifest.
+ * @param mimeGroup MIME group to retrieve.
+ * @return MIME types contained by the MIME group.
+ * @throws IllegalArgumentException if the MIME group was not declared in the manifest.
*/
- @Nullable
+ @NonNull
public Set<String> getMimeGroup(@NonNull String mimeGroup) {
throw new UnsupportedOperationException(
"getMimeGroup not implemented in subclass");