Revise Accessibility button chooser intent/permissions
1) Switch AccessibilityButtonChooserActivity to non-exported
2) Update AccessibilityButtonChooserActivity's intent action to
be CTS-compliant
3) Switches to correct permission to validate a click of the
accessibility button originated from the status bar service
Bug: 36866328
Bug: 36976440
Test: Manual / Created app to validate launch protection
Change-Id: Ifcd5e8dbbe683dc99bb900a5870a9ba374fbd5d4
diff --git a/core/java/android/view/accessibility/AccessibilityManager.java b/core/java/android/view/accessibility/AccessibilityManager.java
index 35276cc..0783780 100644
--- a/core/java/android/view/accessibility/AccessibilityManager.java
+++ b/core/java/android/view/accessibility/AccessibilityManager.java
@@ -112,7 +112,7 @@
*/
@SdkConstant(SdkConstant.SdkConstantType.ACTIVITY_INTENT_ACTION)
public static final String ACTION_CHOOSE_ACCESSIBILITY_BUTTON =
- "android.intent.action.CHOOSE_ACCESSIBILITY_BUTTON";
+ "com.android.internal.intent.action.CHOOSE_ACCESSIBILITY_BUTTON";
static final Object sInstanceSync = new Object();
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index 7922250..c15fbfd 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -3356,6 +3356,7 @@
</intent-filter>
</activity>
<activity android:name="com.android.internal.app.AccessibilityButtonChooserActivity"
+ android:exported="false"
android:theme="@style/Theme.DeviceDefault.Resolver"
android:finishOnCloseSystemDialogs="true"
android:excludeFromRecents="true"
@@ -3365,7 +3366,7 @@
android:process=":ui"
android:visibleToInstantApps="true">
<intent-filter>
- <action android:name="android.intent.action.CHOOSE_ACCESSIBILITY_BUTTON" />
+ <action android:name="com.android.internal.intent.action.CHOOSE_ACCESSIBILITY_BUTTON" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>