我想为我的应用程序实现多个动态快捷方式,但问题是它只允许我实现一个快捷方式。
在我的代码中,您会看到两个快捷方式,但应用程序只生成一个快捷方式。
有人可以查看我的代码并建议我在哪里进行更改吗?
在这里它只显示了一个动态快捷方式
package com.szakes1.makdolannative.activities
import android.content.Intent
import android.content.pm.ShortcutInfo
import android.content.pm.ShortcutManager
import android.graphics.drawable.Icon
import android.net.Uri
import android.os.Build
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.core.content.ContextCompat
import androidx.viewpager.widget.PagerAdapter
import androidx.viewpager.widget.ViewPager
import com.google.android.material.tabs.TabLayout
import com.szakes1.makdolannative.R
import com.szakes1.makdolannative.adapters.ViewPagerAdapter
import java.util.*
class MainActivity : AppCompatActivity() {
private lateinit var tabLayout: TabLayout
private lateinit var viewPager: ViewPager
private lateinit var pagerAdapter: PagerAdapter
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
if (Build.VERSION.SDK_INT >= 25) {
val shortcutManager = getSystemService<ShortcutManager>(ShortcutManager::class.java)
val hamburgerShortcut = ShortcutInfo.Builder(applicationContext, "hamburger")
.setShortLabel("Hamburger")
.setLongLabel("Wygeneruj kod dla hamburgera")
.setIcon(Icon.createWithResource(applicationContext, R.drawable.ic_hamburger))
.setIntent(Intent(applicationContext, GeneratedCouponActivity::class.java).setAction(Intent.ACTION_VIEW).putExtra("coupon_image", R.drawable.coupon_hamburger))
.build()
val icecreamShortcut = ShortcutInfo.Builder(applicationContext, "hamburger")
.setShortLabel("Lody")
.setLongLabel("Wygeneruj kod dla lodów")
.setIcon(Icon.createWithResource(applicationContext, R.drawable.ic_ice_cream))
.setIntent(Intent(applicationContext, GeneratedCouponActivity::class.java).setAction(Intent.ACTION_VIEW).putExtra("coupon_image", R.drawable.coupon_icecream))
.build()
shortcutManager!!.dynamicShortcuts = Arrays.asList(icecreamShortcut, hamburgerShortcut)
}
// Sets color for Navigation and Status Bar
if (Build.VERSION.SDK_INT >= 21) {
val color = ContextCompat.getColor(applicationContext, R.color.colorPrimaryDark)
window.statusBarColor = color
window.navigationBarColor = color
}
tabLayout = findViewById(R.id.tabLayout)
viewPager = findViewById(R.id.viewPager)
pagerAdapter = ViewPagerAdapter(supportFragmentManager, 5)
viewPager.adapter = pagerAdapter
tabLayout.setupWithViewPager(viewPager, true)
}
}