From d78539793008623c4b8a295a5562a3cd83eb9d10 Mon Sep 17 00:00:00 2001 From: Jason Chiu Date: Mon, 25 Mar 2024 17:05:41 +0800 Subject: [PATCH] [Safer intents] Accessibility To avoid implicit intents, make intents launch explicitly. Bug: 323061508 Test: build Change-Id: I5be489f4e6b855156b8dd6b8e54b0b6116f728ad --- .../settings/accessibility/RTTSettingPreferenceController.java | 3 ++- .../ToggleAccessibilityServicePreferenceFragment.java | 3 ++- .../accessibility/ToggleFeaturePreferenceFragment.java | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/com/android/settings/accessibility/RTTSettingPreferenceController.java b/src/com/android/settings/accessibility/RTTSettingPreferenceController.java index 3ad2a3bc9d4..8ab8850470b 100644 --- a/src/com/android/settings/accessibility/RTTSettingPreferenceController.java +++ b/src/com/android/settings/accessibility/RTTSettingPreferenceController.java @@ -61,7 +61,8 @@ public class RTTSettingPreferenceController extends BasePreferenceController { mDialerPackage = mContext.getString(R.string.config_rtt_setting_package_name); mPackageManager = mContext.getPackageManager(); mCarrierConfigManager = mContext.getSystemService(CarrierConfigManager.class); - mRTTIntent = new Intent(context.getString(R.string.config_rtt_setting_intent_action)); + mRTTIntent = new Intent(context.getString(R.string.config_rtt_setting_intent_action)) + .setPackage(mDialerPackage); Log.d(TAG, "init controller"); } diff --git a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java index 0b5ad3ee9f0..e6c44729ecb 100644 --- a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java +++ b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java @@ -455,7 +455,8 @@ public class ToggleAccessibilityServicePreferenceFragment extends final ApplicationInfo appInfo = a11yServiceInfo.getResolveInfo().serviceInfo.applicationInfo; final Uri packageUri = Uri.parse("package:" + appInfo.packageName); - final Intent uninstallIntent = new Intent(Intent.ACTION_UNINSTALL_PACKAGE, packageUri); + final Intent uninstallIntent = new Intent(Intent.ACTION_UNINSTALL_PACKAGE, packageUri) + .setPackage(getString(R.string.config_package_installer_package_name)); return uninstallIntent; } diff --git a/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java index ed47007fbcf..b9d68876901 100644 --- a/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java +++ b/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java @@ -569,6 +569,7 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment } Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); + intent.setPackage(getContext().getPackageName()); intent.setData(Uri.parse("package:" + packageName)); final Preference appInfoPreference = new Preference(getPrefContext());