Support Shortcuts pre API 26

Close #3778
This commit is contained in:
topjohnwu 2021-01-29 19:59:08 -08:00
parent 18acfda99b
commit f6126dd20e
2 changed files with 6 additions and 6 deletions

View File

@ -1,6 +1,5 @@
package com.topjohnwu.magisk.view
import android.annotation.TargetApi
import android.content.Context
import android.content.Intent
import android.content.pm.ShortcutInfo
@ -8,6 +7,8 @@ import android.content.pm.ShortcutManager
import android.os.Build
import androidx.annotation.RequiresApi
import androidx.core.content.getSystemService
import androidx.core.content.pm.ShortcutInfoCompat
import androidx.core.content.pm.ShortcutManagerCompat
import androidx.core.graphics.drawable.IconCompat
import com.topjohnwu.magisk.R
import com.topjohnwu.magisk.core.Const
@ -24,16 +25,14 @@ object Shortcuts {
}
}
@TargetApi(26)
fun addHomeIcon(context: Context) {
val manager = context.getSystemService<ShortcutManager>() ?: return
val intent = context.packageManager.getLaunchIntentForPackage(context.packageName) ?: return
val info = ShortcutInfo.Builder(context, Const.Nav.HOME)
val info = ShortcutInfoCompat.Builder(context, Const.Nav.HOME)
.setShortLabel(context.getString(R.string.magisk))
.setIntent(intent)
.setIcon(context.getIcon(R.drawable.ic_launcher))
.setIcon(context.getIconCompat(R.drawable.ic_launcher))
.build()
manager.requestPinShortcut(info, null)
ShortcutManagerCompat.requestPinShortcut(context, info, null)
}
private fun Context.getIconCompat(id: Int): IconCompat {

View File

@ -6,6 +6,7 @@
<uses-permission android:name="android.permission.USE_BIOMETRIC" />
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
<application
android:name="a.Q"