Merge "Improve scalability of Settings deep link API" into sc-v2-dev am: 3fc42998a8 am: 61183ca835

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15979687

Change-Id: Iaccfa6e4d6aa31a6f0a3f9a1efb0508adeca8f4b
This commit is contained in:
Arc Wang
2021-10-19 04:28:19 +00:00
committed by Automerger Merge Worker
4 changed files with 27 additions and 25 deletions

View File

@@ -100,7 +100,7 @@ package android {
field public static final String INTERACT_ACROSS_PROFILES = "android.permission.INTERACT_ACROSS_PROFILES";
field public static final String INTERNET = "android.permission.INTERNET";
field public static final String KILL_BACKGROUND_PROCESSES = "android.permission.KILL_BACKGROUND_PROCESSES";
field public static final String LAUNCH_TWO_PANE_SETTINGS_DEEP_LINK = "android.permission.LAUNCH_TWO_PANE_SETTINGS_DEEP_LINK";
field public static final String LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK = "android.permission.LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK";
field public static final String LOADER_USAGE_STATS = "android.permission.LOADER_USAGE_STATS";
field public static final String LOCATION_HARDWARE = "android.permission.LOCATION_HARDWARE";
field public static final String MANAGE_DOCUMENTS = "android.permission.MANAGE_DOCUMENTS";
@@ -35366,7 +35366,7 @@ package android.provider {
field public static final String ACTION_SEARCH_SETTINGS = "android.search.action.SEARCH_SETTINGS";
field public static final String ACTION_SECURITY_SETTINGS = "android.settings.SECURITY_SETTINGS";
field public static final String ACTION_SETTINGS = "android.settings.SETTINGS";
field public static final String ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK = "android.settings.SETTINGS_LARGE_SCREEN_DEEP_LINK";
field public static final String ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY = "android.settings.SETTINGS_EMBED_DEEP_LINK_ACTIVITY";
field public static final String ACTION_SHOW_REGULATORY_INFO = "android.settings.SHOW_REGULATORY_INFO";
field public static final String ACTION_SHOW_WORK_POLICY_INFO = "android.settings.SHOW_WORK_POLICY_INFO";
field public static final String ACTION_SOUND_SETTINGS = "android.settings.SOUND_SETTINGS";
@@ -35407,8 +35407,8 @@ package android.provider {
field public static final String EXTRA_EASY_CONNECT_ERROR_CODE = "android.provider.extra.EASY_CONNECT_ERROR_CODE";
field public static final String EXTRA_INPUT_METHOD_ID = "input_method_id";
field public static final String EXTRA_NOTIFICATION_LISTENER_COMPONENT_NAME = "android.provider.extra.NOTIFICATION_LISTENER_COMPONENT_NAME";
field public static final String EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI = "android.provider.extra.SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI";
field public static final String EXTRA_SETTINGS_LARGE_SCREEN_HIGHLIGHT_MENU_KEY = "android.provider.extra.SETTINGS_LARGE_SCREEN_HIGHLIGHT_MENU_KEY";
field public static final String EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY = "android.provider.extra.SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY";
field public static final String EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI = "android.provider.extra.SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI";
field public static final String EXTRA_SUB_ID = "android.provider.extra.SUB_ID";
field public static final String EXTRA_WIFI_NETWORK_LIST = "android.provider.extra.WIFI_NETWORK_LIST";
field public static final String EXTRA_WIFI_NETWORK_RESULT_LIST = "android.provider.extra.WIFI_NETWORK_RESULT_LIST";

View File

@@ -26,7 +26,7 @@ package android {
field public static final String ADJUST_RUNTIME_PERMISSIONS_POLICY = "android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY";
field public static final String ALLOCATE_AGGRESSIVE = "android.permission.ALLOCATE_AGGRESSIVE";
field public static final String ALLOW_ANY_CODEC_FOR_PLAYBACK = "android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK";
field public static final String ALLOW_PLACE_IN_TWO_PANE_SETTINGS = "android.permission.ALLOW_PLACE_IN_TWO_PANE_SETTINGS";
field public static final String ALLOW_PLACE_IN_MULTI_PANE_SETTINGS = "android.permission.ALLOW_PLACE_IN_MULTI_PANE_SETTINGS";
field public static final String AMBIENT_WALLPAPER = "android.permission.AMBIENT_WALLPAPER";
field public static final String APPROVE_INCIDENT_REPORTS = "android.permission.APPROVE_INCIDENT_REPORTS";
field public static final String ASSOCIATE_COMPANION_DEVICES = "android.permission.ASSOCIATE_COMPANION_DEVICES";

View File

@@ -17657,40 +17657,42 @@ public final class Settings {
"android.settings.MANAGE_APP_ALL_FILES_ACCESS_PERMISSION";
/**
* Activity Action: For system or preinstalled apps to show their {@link Activity} in 2-pane
* mode in Settings app on large screen devices.
* Activity Action: For system or preinstalled apps to show their {@link Activity} embedded
* in Settings app on large screen devices.
* <p>
* Input: {@link #EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI} must be included to
* specify the intent for the activity which will be displayed in 2-pane mode in Settings app.
* Input: {@link #EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI} must be included to
* specify the intent for the activity which will be embedded in Settings app.
* It's an intent URI string from {@code intent.toUri(Intent.URI_INTENT_SCHEME)}.
*
* Input: {@link #EXTRA_SETTINGS_LARGE_SCREEN_HIGHLIGHT_MENU_KEY} must be included to
* Input: {@link #EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY} must be included to
* specify a key that indicates the menu item which will be highlighted on settings home menu.
* <p>
* Output: Nothing.
*/
@SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION)
public static final String ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK =
"android.settings.SETTINGS_LARGE_SCREEN_DEEP_LINK";
public static final String ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY =
"android.settings.SETTINGS_EMBED_DEEP_LINK_ACTIVITY";
/**
* Activity Extra: Specify the intent for the {@link Activity} which will be displayed in 2-pane
* mode in Settings app. It's an intent URI string from
* Activity Extra: Specify the intent for the {@link Activity} which will be embedded in
* Settings app. It's an intent URI string from
* {@code intent.toUri(Intent.URI_INTENT_SCHEME)}.
* <p>
* This must be passed as an extra field to {@link #ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK}.
* This must be passed as an extra field to
* {@link #ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY}.
*/
public static final String EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI =
"android.provider.extra.SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI";
public static final String EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI =
"android.provider.extra.SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI";
/**
* Activity Extra: Specify a key that indicates the menu item which should be highlighted on
* settings home menu.
* <p>
* This must be passed as an extra field to {@link #ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK}.
* This must be passed as an extra field to
* {@link #ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY}.
*/
public static final String EXTRA_SETTINGS_LARGE_SCREEN_HIGHLIGHT_MENU_KEY =
"android.provider.extra.SETTINGS_LARGE_SCREEN_HIGHLIGHT_MENU_KEY";
public static final String EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY =
"android.provider.extra.SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY";
/**
* Performs a strict and comprehensive check of whether a calling package is allowed to

View File

@@ -4926,15 +4926,15 @@
android:protectionLevel="signature|privileged" />
<!-- An application needs this permission for
{@link android.provider.Settings#ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK} to show its
{@link android.app.Activity} in 2-pane of Settings app. -->
<permission android:name="android.permission.LAUNCH_TWO_PANE_SETTINGS_DEEP_LINK"
{@link android.provider.Settings#ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY} to show its
{@link android.app.Activity} embedded in Settings app. -->
<permission android:name="android.permission.LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK"
android:protectionLevel="signature|preinstalled" />
<!-- @SystemApi {@link android.app.Activity} should require this permission to ensure that only
the settings app can embed it in a 2-pane window.
the settings app can embed it in a multi pane window.
@hide -->
<permission android:name="android.permission.ALLOW_PLACE_IN_TWO_PANE_SETTINGS"
<permission android:name="android.permission.ALLOW_PLACE_IN_MULTI_PANE_SETTINGS"
android:protectionLevel="signature" />
<!-- @SystemApi Allows applications to set a live wallpaper.