Android:覆盖putExtra

时间:2015-11-26 17:42:39

标签: android android-intent mobile broadcastreceiver

我有一个扩展BroadcastReciever的类,所以只有在触发警报时才会调用它。

我把一个带有"距离"的键作为额外的int变量。 但是,距离会改变,所以我尝试覆盖putExtra(在另一个函数中),但它没有获得距离的新值。 我做了toast来仔细检查它是否进入了它应该覆盖距离值的函数内部(它确实在函数内部)。

我的问题是,

  1. 是否可以覆盖相同密钥的putExtra?
  2. 有没有办法可以改变距离的值?
  3. 以下是我如何实施它:

    此代码在用户单击按钮时运行

        intentAlarm = new Intent(getBaseContext(), AlarmReciever.class);
        intentAlarm.putExtra("number", number);
        intentAlarm.putExtra("distance", getDistance());
    
         alarm_pending = PendingIntent.getBroadcast(getBaseContext(), 0,
                                intentAlarm, PendingIntent.FLAG_UPDATE_CURRENT);
    

    我"覆盖"距离,我可以在哪里获得新的距离

        @Override
        public void onLocationChanged(Location location) {
            intentAlarm.putExtra("distance", getDistance());
        }
    

0 个答案:

没有答案