[Hearing device shortcut] Provide a way to open accessibility hearing device settings via intent

* hearing device shortcut trigger action is to open accessibility hearing device settings. Framework needs a way to open it.

Bug: 237625815
Test: adb shell am start -a \
"android.settings.ACCESSIBILITY_DETAILS_SETTINGS" \
--es android.intent.extra.COMPONENT_NAME \
"com.android.server.accessibility/HearingAids"
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityDetailsSettingsFragmentTest

Change-Id: Ie47e24d29998eac0cf4805e1ac4e7d2bcb77ed8e
This commit is contained in:
jasonwshsu
2022-12-09 02:16:56 +08:00
parent ad6351d614
commit a7fd647ef7
2 changed files with 26 additions and 0 deletions

View File

@@ -17,6 +17,7 @@
package com.android.settings.accessibility;
import static com.android.internal.accessibility.AccessibilityShortcutController.ACCESSIBILITY_BUTTON_COMPONENT_NAME;
import static com.android.internal.accessibility.AccessibilityShortcutController.ACCESSIBILITY_HEARING_AIDS_COMPONENT_NAME;
import static com.android.internal.accessibility.AccessibilityShortcutController.MAGNIFICATION_COMPONENT_NAME;
import static com.google.common.truth.Truth.assertThat;
@@ -36,6 +37,7 @@ import android.content.pm.ApplicationInfo;
import android.content.pm.ResolveInfo;
import android.content.pm.ServiceInfo;
import android.os.Bundle;
import android.util.FeatureFlagUtils;
import android.view.accessibility.AccessibilityManager;
import androidx.fragment.app.FragmentActivity;
@@ -171,6 +173,21 @@ public class AccessibilityDetailsSettingsFragmentTest {
AccessibilityButtonFragment.class.getName());
}
@Test
public void onCreate_hearingAidsComponentName_launchAccessibilityHearingAidsFragment() {
FeatureFlagUtils.setEnabled(mContext,
FeatureFlagUtils.SETTINGS_ACCESSIBILITY_HEARING_AID_PAGE, true);
final Intent intent = new Intent();
intent.putExtra(Intent.EXTRA_COMPONENT_NAME,
ACCESSIBILITY_HEARING_AIDS_COMPONENT_NAME.flattenToString());
doReturn(intent).when(mActivity).getIntent();
mFragment.onCreate(Bundle.EMPTY);
assertStartActivityWithExpectedFragment(mActivity,
AccessibilityHearingAidsFragment.class.getName());
}
@Test
public void getMetricsCategory_returnsCorrectCategory() {
assertThat(mFragment.getMetricsCategory()).isEqualTo(