2

我收到了这个警告,并且写在我的事件订阅者中的代码并不总是被触发..它是非常随机的。

有人可以帮我弄这个吗。谢谢。

在此处输入图像描述

我有这个发布事件的课程......
EventListAdapter

protected void updateDbToHandle(Context context, Cursor cursor) {
  //something here....
  toggleEvent.setContext(context);
  EventBus.getDefault().post(toggleEvent);
}

protected void updateDbToIgnore(Context context, Cursor cursor) {
  //something here....
  toggleEvent.setContext(context);
  EventBus.getDefault().post(toggleEvent);
}

Event class

public class ToggleEvent {
  private String name;
  private Context context;

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public Context getContext() {
    return context;
  }

  public void setContext(Context context) {
    this.context = context;
  }
}

the subscriber

public class ToggleEventListener {

  public ToggleEventListener() {
    super();
    EventBus.getDefault().register(this);
  }

  public void onEvent(ToggleEvent toggleEvent) {
    Log.d("toggleEvent", "toggle event triggered in event bus");
    Context context = toggleEvent.getContext();
    Intent intentForRinger = new Intent(context, RingerToggler.class);
    System.out.println("change in calendar is here ");
    //calRead.getEventControl(context);
    intentForRinger.putExtra("START_TIME", false);
    intentForRinger.putExtra("RESCAN", false);
    intentForRinger.putExtra("CHANGE", true);
    intentForRinger.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    context.startService(intentForRinger);
    EventBus.getDefault().unregister(this);
  }
}

不知道为什么我会收到这个警告......
而且我在切换事件中编写的代码也不是每次都执行......
它被遗漏了,并且事件被调用是非常随机的......

4

0 回答 0