summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Yohei Yukawa <yukawa@google.com> 2016-02-18 23:16:04 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2016-02-18 23:16:06 +0000
commit5eb148bab6ea49c4c646649692ae6769b9c4e54c (patch)
tree02164a09e6c2e3e750d20e2284b1f3585a456a96
parentcff479e2eeaedb42765d2522e8befe7efaa67bd6 (diff)
parent726c45970e35e3fff3eeb4d86c3b772db73adcc7 (diff)
Merge "Stop granting default Contacts permission to IMEs." into nyc-dev
-rw-r--r--core/java/android/content/pm/PackageManagerInternal.java6
-rw-r--r--services/core/java/com/android/server/InputMethodManagerService.java34
-rw-r--r--services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java20
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerService.java7
4 files changed, 0 insertions, 67 deletions
diff --git a/core/java/android/content/pm/PackageManagerInternal.java b/core/java/android/content/pm/PackageManagerInternal.java
index 8bf20bfa5207..7fe7f84e0ec9 100644
--- a/core/java/android/content/pm/PackageManagerInternal.java
+++ b/core/java/android/content/pm/PackageManagerInternal.java
@@ -59,12 +59,6 @@ public abstract class PackageManagerInternal {
public abstract void setLocationPackagesProvider(PackagesProvider provider);
/**
- * Sets the input method packages provider.
- * @param provider The packages provider.
- */
- public abstract void setImePackagesProvider(PackagesProvider provider);
-
- /**
* Sets the voice interaction packages provider.
* @param provider The packages provider.
*/
diff --git a/services/core/java/com/android/server/InputMethodManagerService.java b/services/core/java/com/android/server/InputMethodManagerService.java
index 507ac22bca0d..5f6fddfc411c 100644
--- a/services/core/java/com/android/server/InputMethodManagerService.java
+++ b/services/core/java/com/android/server/InputMethodManagerService.java
@@ -61,7 +61,6 @@ import android.content.ServiceConnection;
import android.content.pm.ApplicationInfo;
import android.content.pm.IPackageManager;
import android.content.pm.PackageManager;
-import android.content.pm.PackageManagerInternal;
import android.content.pm.ResolveInfo;
import android.content.pm.ServiceInfo;
import android.content.pm.UserInfo;
@@ -859,39 +858,6 @@ public class InputMethodManagerService extends IInputMethodManager.Stub
mSettings = new InputMethodSettings(
mRes, context.getContentResolver(), mMethodMap, mMethodList, userId, !mSystemReady);
- // Let the package manager query which are the default imes
- // as they get certain permissions granted by default.
- PackageManagerInternal packageManagerInternal = LocalServices.getService(
- PackageManagerInternal.class);
- packageManagerInternal.setImePackagesProvider(
- new PackageManagerInternal.PackagesProvider() {
- @Override
- public String[] getPackages(int userId) {
- synchronized (mMethodMap) {
- final int currentUserId = mSettings.getCurrentUserId();
- // TODO: We are switching the current user id in the settings
- // object to query it and then revert the user id. Ideally, we
- // should call a API in settings with the user id as an argument.
- mSettings.switchCurrentUser(userId, true /* copyOnWrite */);
- List<InputMethodInfo> imes = mSettings
- .getEnabledInputMethodListLocked();
- String[] packageNames = null;
- if (imes != null) {
- final int imeCount = imes.size();
- packageNames = new String[imeCount];
- for (int i = 0; i < imeCount; i++) {
- InputMethodInfo ime = imes.get(i);
- packageNames[i] = ime.getPackageName();
- }
- }
- // If the system is not ready, then we use copy-on-write mode.
- final boolean useCopyOnWriteSettings = !mSystemReady;
- mSettings.switchCurrentUser(currentUserId, useCopyOnWriteSettings);
- return packageNames;
- }
- }
- });
-
updateCurrentProfileIds();
mFileManager = new InputMethodFileManager(mMethodMap, userId);
synchronized (mMethodMap) {
diff --git a/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java b/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java
index 63c940890a81..e7c2f6f117a8 100644
--- a/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java
+++ b/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java
@@ -124,7 +124,6 @@ final class DefaultPermissionGrantPolicy {
private final PackageManagerService mService;
- private PackagesProvider mImePackagesProvider;
private PackagesProvider mLocationPackagesProvider;
private PackagesProvider mVoiceInteractionPackagesProvider;
private PackagesProvider mSmsAppPackagesProvider;
@@ -136,10 +135,6 @@ final class DefaultPermissionGrantPolicy {
mService = service;
}
- public void setImePackagesProviderLPr(PackagesProvider provider) {
- mImePackagesProvider = provider;
- }
-
public void setLocationPackagesProviderLPw(PackagesProvider provider) {
mLocationPackagesProvider = provider;
}
@@ -198,7 +193,6 @@ final class DefaultPermissionGrantPolicy {
private void grantDefaultSystemHandlerPermissions(int userId) {
Log.i(TAG, "Granting permissions to default platform handlers for user " + userId);
- final PackagesProvider imePackagesProvider;
final PackagesProvider locationPackagesProvider;
final PackagesProvider voiceInteractionPackagesProvider;
final PackagesProvider smsAppPackagesProvider;
@@ -207,7 +201,6 @@ final class DefaultPermissionGrantPolicy {
final SyncAdapterPackagesProvider syncAdapterPackagesProvider;
synchronized (mService.mPackages) {
- imePackagesProvider = mImePackagesProvider;
locationPackagesProvider = mLocationPackagesProvider;
voiceInteractionPackagesProvider = mVoiceInteractionPackagesProvider;
smsAppPackagesProvider = mSmsAppPackagesProvider;
@@ -216,8 +209,6 @@ final class DefaultPermissionGrantPolicy {
syncAdapterPackagesProvider = mSyncAdapterPackagesProvider;
}
- String[] imePackageNames = (imePackagesProvider != null)
- ? imePackagesProvider.getPackages(userId) : null;
String[] voiceInteractPackageNames = (voiceInteractionPackagesProvider != null)
? voiceInteractionPackagesProvider.getPackages(userId) : null;
String[] locationPackageNames = (locationPackagesProvider != null)
@@ -500,17 +491,6 @@ final class DefaultPermissionGrantPolicy {
grantRuntimePermissionsLPw(browserPackage, LOCATION_PERMISSIONS, userId);
}
- // IME
- if (imePackageNames != null) {
- for (String imePackageName : imePackageNames) {
- PackageParser.Package imePackage = getSystemPackageLPr(imePackageName);
- if (imePackage != null
- && doesPackageSupportRuntimePermissions(imePackage)) {
- grantRuntimePermissionsLPw(imePackage, CONTACTS_PERMISSIONS, userId);
- }
- }
- }
-
// Voice interaction
if (voiceInteractPackageNames != null) {
for (String voiceInteractPackageName : voiceInteractPackageNames) {
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index 1194be28834b..abbad21d4c7b 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -18883,13 +18883,6 @@ Slog.v(TAG, ":: stepped forward, applying functor at tag " + parser.getName());
}
@Override
- public void setImePackagesProvider(PackagesProvider provider) {
- synchronized (mPackages) {
- mDefaultPermissionPolicy.setImePackagesProviderLPr(provider);
- }
- }
-
- @Override
public void setVoiceInteractionPackagesProvider(PackagesProvider provider) {
synchronized (mPackages) {
mDefaultPermissionPolicy.setVoiceInteractionPackagesProviderLPw(provider);