From 4b66d556dbe3b78cbf59437a211197d135010f18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=97=E5=AE=AB=E9=9B=AA=E7=8F=8A?= Date: Mon, 5 Dec 2022 04:02:07 +0800 Subject: [PATCH] Use AppDetailsActivity (#2274) --- .../org/lsposed/manager/util/ShortcutUtil.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/org/lsposed/manager/util/ShortcutUtil.java b/app/src/main/java/org/lsposed/manager/util/ShortcutUtil.java index bcec8b0a..8398bb5f 100644 --- a/app/src/main/java/org/lsposed/manager/util/ShortcutUtil.java +++ b/app/src/main/java/org/lsposed/manager/util/ShortcutUtil.java @@ -18,6 +18,7 @@ import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.graphics.drawable.Icon; import android.graphics.drawable.LayerDrawable; +import android.os.Build; import org.lsposed.manager.App; import org.lsposed.manager.R; @@ -104,14 +105,17 @@ public class ShortcutUtil { public static void requestPinLaunchShortcut(Runnable afterPinned) { if (!App.isParasitic()) throw new RuntimeException(); var context = App.getInstance(); - var info = new ShortcutInfo.Builder(context, SHORTCUT_ID) + var builder = new ShortcutInfo.Builder(context, SHORTCUT_ID) .setShortLabel(context.getString(R.string.app_name)) .setIntent(getLaunchIntent(context)) - .setActivity(new ComponentName(context.getPackageName(), "android.__dummy__")) - .setIcon(Icon.createWithAdaptiveBitmap(getBitmap(context, R.drawable.ic_launcher))) - .build(); + .setIcon(Icon.createWithAdaptiveBitmap(getBitmap(context, R.drawable.ic_launcher))); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + var activity = new ComponentName(context.getPackageName(), + "android.app.AppDetailsActivity"); + builder.setActivity(activity); + } var sm = context.getSystemService(ShortcutManager.class); - sm.requestPinShortcut(info, registerReceiver(context, afterPinned)); + sm.requestPinShortcut(builder.build(), registerReceiver(context, afterPinned)); } public static boolean isLaunchShortcutPinned() {