Merge "Improve scalability of Settings deep link API" into sc-v2-dev am: 499d8b26bd

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/15981710

Change-Id: I86fe5ccbfd87a8758fb6b00ee76061e61943c512
This commit is contained in:
Arc Wang
2021-10-19 04:12:00 +00:00
committed by Automerger Merge Worker
3 changed files with 15 additions and 15 deletions

View File

@@ -107,8 +107,8 @@
<uses-permission android:name="android.permission.READ_DREAM_STATE" /> <uses-permission android:name="android.permission.READ_DREAM_STATE" />
<uses-permission android:name="android.permission.READ_DREAM_SUPPRESSION" /> <uses-permission android:name="android.permission.READ_DREAM_SUPPRESSION" />
<uses-permission android:name="android.permission.MANAGE_APP_HIBERNATION" /> <uses-permission android:name="android.permission.MANAGE_APP_HIBERNATION" />
<uses-permission android:name="android.permission.LAUNCH_TWO_PANE_SETTINGS_DEEP_LINK" /> <uses-permission android:name="android.permission.LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK" />
<uses-permission android:name="android.permission.ALLOW_PLACE_IN_TWO_PANE_SETTINGS" /> <uses-permission android:name="android.permission.ALLOW_PLACE_IN_MULTI_PANE_SETTINGS" />
<application <application
android:name=".SettingsApplication" android:name=".SettingsApplication"
@@ -178,10 +178,10 @@
<activity-alias android:name="DeepLinkHomepageActivity" <activity-alias android:name="DeepLinkHomepageActivity"
android:label="@string/settings_label_launcher" android:label="@string/settings_label_launcher"
android:exported="true" android:exported="true"
android:permission="android.permission.LAUNCH_TWO_PANE_SETTINGS_DEEP_LINK" android:permission="android.permission.LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK"
android:targetActivity=".homepage.SettingsHomepageActivity"> android:targetActivity=".homepage.SettingsHomepageActivity">
<intent-filter> <intent-filter>
<action android:name="android.settings.SETTINGS_LARGE_SCREEN_DEEP_LINK" /> <action android:name="android.settings.SETTINGS_EMBED_DEEP_LINK_ACTIVITY" />
<category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.DEFAULT" />
</intent-filter> </intent-filter>
</activity-alias> </activity-alias>

View File

@@ -364,13 +364,13 @@ public class SettingsActivity extends SettingsBaseActivity
// It's a deep link intent, SettingsHomepageActivity will set SplitPairRule and start it. // It's a deep link intent, SettingsHomepageActivity will set SplitPairRule and start it.
final Intent trampolineIntent = final Intent trampolineIntent =
new Intent(android.provider.Settings.ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK); new Intent(android.provider.Settings.ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY);
trampolineIntent.replaceExtras(intent); trampolineIntent.replaceExtras(intent);
trampolineIntent.putExtra( trampolineIntent.putExtra(
android.provider.Settings.EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI, android.provider.Settings.EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI,
intent.toUri(Intent.URI_INTENT_SCHEME)); intent.toUri(Intent.URI_INTENT_SCHEME));
trampolineIntent.putExtra( trampolineIntent.putExtra(
android.provider.Settings.EXTRA_SETTINGS_LARGE_SCREEN_HIGHLIGHT_MENU_KEY, android.provider.Settings.EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY,
mHighlightMenuKey); mHighlightMenuKey);
trampolineIntent.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT); trampolineIntent.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
startActivity(trampolineIntent); startActivity(trampolineIntent);

View File

@@ -16,9 +16,9 @@
package com.android.settings.homepage; package com.android.settings.homepage;
import static android.provider.Settings.ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK; import static android.provider.Settings.ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY;
import static android.provider.Settings.EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI; import static android.provider.Settings.EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY;
import static android.provider.Settings.EXTRA_SETTINGS_LARGE_SCREEN_HIGHLIGHT_MENU_KEY; import static android.provider.Settings.EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI;
import android.animation.LayoutTransition; import android.animation.LayoutTransition;
import android.app.ActivityManager; import android.app.ActivityManager;
@@ -191,14 +191,14 @@ public class SettingsHomepageActivity extends FragmentActivity implements
final Intent intent = getIntent(); final Intent intent = getIntent();
if (intent == null || !TextUtils.equals(intent.getAction(), if (intent == null || !TextUtils.equals(intent.getAction(),
ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK)) { ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY)) {
return; return;
} }
final String intentUriString = intent.getStringExtra( final String intentUriString = intent.getStringExtra(
EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI); EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI);
if (TextUtils.isEmpty(intentUriString)) { if (TextUtils.isEmpty(intentUriString)) {
Log.e(TAG, "No EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI to deep link"); Log.e(TAG, "No EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI to deep link");
finish(); finish();
return; return;
} }
@@ -250,9 +250,9 @@ public class SettingsHomepageActivity extends FragmentActivity implements
private String getHighlightMenuKey() { private String getHighlightMenuKey() {
final Intent intent = getIntent(); final Intent intent = getIntent();
if (intent != null && TextUtils.equals(intent.getAction(), if (intent != null && TextUtils.equals(intent.getAction(),
ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK)) { ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY)) {
final String menuKey = intent.getStringExtra( final String menuKey = intent.getStringExtra(
EXTRA_SETTINGS_LARGE_SCREEN_HIGHLIGHT_MENU_KEY); EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY);
if (!TextUtils.isEmpty(menuKey)) { if (!TextUtils.isEmpty(menuKey)) {
return menuKey; return menuKey;
} }