summaryrefslogtreecommitdiffstats
path: root/core/java/android/content
diff options
context:
space:
mode:
authorFabrice Di Meglio <fdimeglio@google.com>2015-04-10 17:24:02 -0700
committerFabrice Di Meglio <fdimeglio@google.com>2015-04-10 17:54:02 -0700
commit6227172310663e1267b1fabd68be890a1cb7e145 (patch)
treeb05d1ddcd6858b676c6e5a128fdd07e0b6e5f599 /core/java/android/content
parent2d897fbc447fd315b246a752e14825cbd7214e74 (diff)
downloadframeworks_base-6227172310663e1267b1fabd68be890a1cb7e145.zip
frameworks_base-6227172310663e1267b1fabd68be890a1cb7e145.tar.gz
frameworks_base-6227172310663e1267b1fabd68be890a1cb7e145.tar.bz2
Add Default Browser App support and relax Hosts validation for AppLinks
- add private PackageManager APIs for setting/getting the default Browser App package name - serialize / deserialize the default Browser App package name per User Also relax the Hosts name validation for the AppLinls feature. Now we just care if the IntentFilter is having an HTTP or HTTPS scheme. Change-Id: I4436f66ac6beff57e14f7f3a2a00b0b582c03be9
Diffstat (limited to 'core/java/android/content')
-rw-r--r--core/java/android/content/pm/IPackageManager.aidl3
-rw-r--r--core/java/android/content/pm/PackageManager.java26
2 files changed, 29 insertions, 0 deletions
diff --git a/core/java/android/content/pm/IPackageManager.aidl b/core/java/android/content/pm/IPackageManager.aidl
index 55c990f..c2580c0 100644
--- a/core/java/android/content/pm/IPackageManager.aidl
+++ b/core/java/android/content/pm/IPackageManager.aidl
@@ -450,6 +450,9 @@ interface IPackageManager {
List<IntentFilterVerificationInfo> getIntentFilterVerifications(String packageName);
List<IntentFilter> getAllIntentFilters(String packageName);
+ boolean setDefaultBrowserPackageName(String packageName, int userId);
+ String getDefaultBrowserPackageName(int userId);
+
VerifierDeviceIdentity getVerifierDeviceIdentity();
boolean isFirstBoot();
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index 303b709..6532563 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -3658,6 +3658,32 @@ public abstract class PackageManager {
public abstract List<IntentFilter> getAllIntentFilters(String packageName);
/**
+ * Get the default Browser package name for a specific user.
+ *
+ * @param userId The user id.
+ *
+ * @return the package name of the default Browser for the specified user. If the user id passed
+ * is -1 (all users) it will return a null value.
+ *
+ * @hide
+ */
+ public abstract String getDefaultBrowserPackageName(int userId);
+
+ /**
+ * Set the default Browser package name for a specific user.
+ *
+ * @param packageName The package name of the default Browser.
+ * @param userId The user id.
+ *
+ * @return true if the default Browser for the specified user has been set,
+ * otherwise return false. If the user id passed is -1 (all users) this call will not
+ * do anything and just return false.
+ *
+ * @hide
+ */
+ public abstract boolean setDefaultBrowserPackageName(String packageName, int userId);
+
+ /**
* Change the installer associated with a given package. There are limitations
* on how the installer package can be changed; in particular:
* <ul>