【问题标题】:extra missing when I receive intent当我收到意图时额外丢失
【发布时间】:2021-01-02 11:34:49
【问题描述】:

我在这里阅读了很多帖子,但我找不到任何类似的问题或任何类似的解决方案来解决我的问题。 我有一个返回 1 o 0 的方法取决于在单选按钮 getcode 中选择的性别 它工作正常我测试它。因此,当我单击方法 onClickListener 中的一个按钮时,我会创建一个意图并将其发送到 BroudcastReciver:

var intent=Intent(this,Receiver::java).apply{putExtra("x",getcode()}
var pi=PendingIntent.getBroadcast(this,0,intent,0)
alarm.setExact(AlarmManager.RTC_WAKEUP,calendar.timeInMillis,pi)

并在 Recieve 类中接收它作为休闲:

onRecieve(c:Context,i:Intent){
i.getIntExtra("x",0)
}

问题是我发送 0 或 1 并且我总是收到第一个发送值。如果我第一次发送 0,我总是收到 0,即使意图是 1(我检查过)

【问题讨论】:

  • 而不是在getBroadcast 中的最后一个参数中传递0,而是使用PendingIntent 类中的一个标志,例如PendingIntent.FLAG_UPDATE_CURRENT
  • 你推荐我什么?我不明白你想说什么。你能解释得更好吗?

标签: android kotlin android-intent missing-data


【解决方案1】:

作为@ADMsaid,我将这一行改为:

var pi=PendingIntent.getBroadcast(this,0,intent,PendingIntent.FLAG_UPDATE_CURRENT)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多