From 0f7b80f47f230d43809445c35149172dd80ff645 Mon Sep 17 00:00:00 2001 From: Tsung-Mao Fang Date: Mon, 25 Jul 2022 15:06:34 +0800 Subject: [PATCH] Set an action name for wallpaer index Since Android T+, app has to assign an action name for opening a external app page. Test: Manual test wallpaper search result and can open. Fix: 239867167 Change-Id: I4579aaf6e831ff82721c958e6b91ede4cabda2c8 --- res/values/config.xml | 4 ++++ .../settings/display/WallpaperPreferenceController.java | 9 +++++++++ .../settings/wallpaper/WallpaperSuggestionActivity.java | 2 +- 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/res/values/config.xml b/res/values/config.xml index c7ef595e3ae..078c7591771 100755 --- a/res/values/config.xml +++ b/res/values/config.xml @@ -49,6 +49,10 @@ com.android.settings.Settings$WallpaperSettingsActivity + + + + com.android.wallpaper.LAUNCH_SOURCE diff --git a/src/com/android/settings/display/WallpaperPreferenceController.java b/src/com/android/settings/display/WallpaperPreferenceController.java index 00687b2aaba..9972bf9cabe 100644 --- a/src/com/android/settings/display/WallpaperPreferenceController.java +++ b/src/com/android/settings/display/WallpaperPreferenceController.java @@ -41,6 +41,8 @@ public class WallpaperPreferenceController extends BasePreferenceController { private final String mWallpaperPackage; private final String mWallpaperClass; private final String mStylesAndWallpaperClass; + private final String mWallpaperActionName; + private final String mStylesAndWallpaperActionName; private final String mWallpaperLaunchExtra; public WallpaperPreferenceController(Context context, String key) { @@ -49,6 +51,9 @@ public class WallpaperPreferenceController extends BasePreferenceController { mWallpaperClass = mContext.getString(R.string.config_wallpaper_picker_class); mStylesAndWallpaperClass = mContext.getString(R.string.config_styles_and_wallpaper_picker_class); + mWallpaperActionName = mContext.getString(R.string.config_wallpaper_picker_action); + mStylesAndWallpaperActionName = + mContext.getString(R.string.config_styles_and_wallpaper_picker_action); mWallpaperLaunchExtra = mContext.getString(R.string.config_wallpaper_picker_launch_extra); } @@ -72,6 +77,10 @@ public class WallpaperPreferenceController extends BasePreferenceController { return areStylesAvailable() ? mStylesAndWallpaperClass : mWallpaperClass; } + public String getComponentActionName() { + return areStylesAvailable() ? mStylesAndWallpaperActionName : mWallpaperActionName; + } + public String getKeywords() { StringBuilder sb = new StringBuilder(mContext.getString(R.string.keywords_wallpaper)); if (areStylesAvailable()) { diff --git a/src/com/android/settings/wallpaper/WallpaperSuggestionActivity.java b/src/com/android/settings/wallpaper/WallpaperSuggestionActivity.java index c2b3fa09a89..675e10fc2a0 100644 --- a/src/com/android/settings/wallpaper/WallpaperSuggestionActivity.java +++ b/src/com/android/settings/wallpaper/WallpaperSuggestionActivity.java @@ -84,7 +84,7 @@ public class WallpaperSuggestionActivity extends StyleSuggestionActivityBase imp ComponentName component = controller.getComponentName(); data.intentTargetPackage = component.getPackageName(); data.intentTargetClass = component.getClassName(); - data.intentAction = Intent.ACTION_MAIN; + data.intentAction = controller.getComponentActionName(); data.key = SUPPORT_SEARCH_INDEX_KEY; data.keywords = controller.getKeywords(); result.add(data);