0

我的 Android 应用程序有 3 个快捷方式。根据单击的快捷方式,将通过 putExtra 发送一条消息。代码如下所示。

val shortcutManager = getSystemService(
        context,
        ShortcutManager::class.java
)

val a: Intent
val b: Intent
val c: Intent

val mainIntent = Intent(Intent.ACTION_VIEW, null, context, Class1::class.java)

a = mainIntent
a.putExtra( "THIS_IS_A",
        Class2::class.java.name
)

b = mainIntent
b.putExtra( "THIS_IS_B",
        Class3::class.java.name
)

c = mainIntent
c.putExtra("THIS IS C",
        Class4::class.java.name
)
val shortcutA = ShortcutInfo.Builder(context, "shortcutId")
        .setShortLabel("a")
        .setLongLabel("a")
        .setIcon(Icon.createWithResource(context, icon))
        .setIntent(a)
        .build()
        ...
val shortcutC = ShortcutInfo.Builder(context, "shortcutIdC")
        .setShortLabel("c")
        .setLongLabel("c")
        .setIcon(Icon.createWithResource(context, icon))
        .setIntent(c)
        .build()
shortcutManager!!.dynamicShortcuts = listOf(shortcutA, ..., shortcutC)

在这种情况下,我试图通过单击某个快捷方式使用 putExtra 发送唯一消息,以便在我发送此数据的类中,根据值执行操作,但在这种情况下,只有最后一个 putExtra 是总是发送,即“THIS_IS_C”。请帮我弄清楚如何通过单击某个元素发送必要的数据,即通过单击第一个快捷方式“THIS_IS_A”发送,并通过单击第三个快捷方式“THIS_IS_C”发送?

4

0 回答 0