Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 52bd31f5 authored by Jackal Guo's avatar Jackal Guo
Browse files

Update the logic of querying crashed a11y services

Bug: 129689483
Test: a11y CTS & unit tests
Test: manual
      1. Install and enable an intentional crashed a11y service.
      2. After it's crashed and malfunctioning, re-enable it.
      3. Check if it's bound again.

Change-Id: Ifda4fddfbe9b38841f5cc143c32ab1d2f059350c
parent 764115ca
Loading
Loading
Loading
Loading
+1 −5
Original line number Diff line number Diff line
@@ -135,9 +135,6 @@ public class AccessibilityDetailsSettingsFragment extends InstrumentedFragment {
        final String packageName = serviceInfo.packageName;
        final ComponentName componentName = new ComponentName(packageName, serviceInfo.name);

        final List<AccessibilityServiceInfo> enabledServiceInfos = AccessibilityManager.getInstance(
                getActivity()).getEnabledAccessibilityServiceList(
                AccessibilityServiceInfo.FEEDBACK_ALL_MASK);
        final Set<ComponentName> enabledServices =
                AccessibilityUtils.getEnabledServicesFromSettings(getActivity());
        final boolean serviceEnabled = enabledServices.contains(componentName);
@@ -146,8 +143,7 @@ public class AccessibilityDetailsSettingsFragment extends InstrumentedFragment {
            description = getString(R.string.accessibility_service_default_description);
        }

        if (serviceEnabled && AccessibilityUtils.hasServiceCrashed(
                packageName, serviceInfo.name, enabledServiceInfos)) {
        if (serviceEnabled && info.crashed) {
            // Update the summaries for services that have crashed.
            description = getString(R.string.accessibility_description_state_stopped);
        }
+1 −4
Original line number Diff line number Diff line
@@ -332,8 +332,6 @@ public class AccessibilitySettings extends DashboardFragment {

        List<AccessibilityServiceInfo> installedServices =
                accessibilityManager.getInstalledAccessibilityServiceList();
        List<AccessibilityServiceInfo> enabledServiceInfos = accessibilityManager
                .getEnabledAccessibilityServiceList(AccessibilityServiceInfo.FEEDBACK_ALL_MASK);
        Set<ComponentName> enabledServices = AccessibilityUtils.getEnabledServicesFromSettings(
                getActivity());
        List<String> permittedServices = mDpm.getPermittedAccessibilityServices(
@@ -376,8 +374,7 @@ public class AccessibilitySettings extends DashboardFragment {
                description = getString(R.string.accessibility_service_default_description);
            }

            if (serviceEnabled && AccessibilityUtils.hasServiceCrashed(
                    packageName, serviceInfo.name, enabledServiceInfos)) {
            if (serviceEnabled && info.crashed) {
                // Update the summaries for services that have crashed.
                preference.setSummary(R.string.accessibility_summary_state_stopped);
                description = getString(R.string.accessibility_description_state_stopped);