从广播接收器向android发送数据

从广播接收器向android发送数据,android,android-fragments,broadcastreceiver,Android,Android Fragments,Broadcastreceiver,我试图使用广播接收器每24小时更新片段中的变量值,即使经过大量研究,也无法理解如何更新变量数据 这是我使用的函数,用于每24小时调用一次警报,并将需要增加的变量发送到警报接收器,两者都工作正常 public void scheduleAlarm() { Intent intentAlarm= new Intent(getActivity(), AlarmReciever.class); intentAlarm.putExtra("imageName",""+imagen

我试图使用广播接收器每24小时更新片段中的变量值,即使经过大量研究,也无法理解如何更新变量数据

这是我使用的函数,用于每24小时调用一次警报,并将需要增加的变量发送到警报接收器,两者都工作正常

    public void scheduleAlarm() {

    Intent intentAlarm= new Intent(getActivity(), AlarmReciever.class);
    intentAlarm.putExtra("imageName",""+imagename); // variable to be updated
    Calendar calNow = Calendar.getInstance();
    Calendar calSet = (Calendar) calNow.clone();
    calSet.set(Calendar.HOUR_OF_DAY, 4);
    calSet.set(Calendar.MINUTE, 18);
    calSet.set(Calendar.SECOND, 0);
    calSet.set(Calendar.MILLISECOND, 0);
    if(calSet.compareTo(calNow) <= 0){
        calSet.add(Calendar.DATE, 1);
    }
    AlarmManager alarmManager = (AlarmManager) getActivity().getSystemService(Context.ALARM_SERVICE);
    alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calSet.getTimeInMillis(),AlarmManager.INTERVAL_DAY, PendingIntent.getBroadcast(getActivity(), 1, intentAlarm, PendingIntent.FLAG_UPDATE_CURRENT));

}
}


任何帮助都将不胜感激。

更结构化的方法是保持这些类松散耦合,并使用
事件总线将它们链接在一起。它无缝地允许您将数据作为事件传递给多个类。要查看用法,检查此链接

检查此链接当数据已接收且现在需要返回@OBXData sending from where和receive from where时,如何在OneEvent函数中发送回数据?当使用事件总线的post方法从片段发送数据,然后从Receiver中的OneEvent方法检索数据时使用“event.getmessage()”初始化。我需要更新该消息并将其发送回片段@OBXYou可以为单个事件创建多个事件以及多个订阅服务器。在您的情况下,您可以将一个事件从片段发送到广播接收器,并在广播接收器中接收它,当您在广播接收器中接收到该事件时,您可以从广播接收器生成另一个事件,并将该事件的订阅方设置为片段。所以你会得到更新回来嘿,非常感谢你的回答,但我面临另一个问题。当应用程序被销毁并重新启动时,将使用先前初始化的数据。我怎样才能解决这个问题@OBX
public class AlarmReciever extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {

    Log.e("servicerun","true");
    String intentImageName = intent.getStringExtra("imageName");
    int numberImageName = Integer.parseInt(intentImageName) +1; // How to send this value back to the fragment?
}