I found a bug that when I create an EView and I overwrite onDetachedFromWindow method.
Then, the generated Class's onDetachedFromWindow method will call super.onAttachedToWindow
instead of super.onDetachedFromWindow .
so, I lookup the package "androidannotations-4.3.0.jar" and found that ,
in this class org.androidannotations.holder.EViewHolder

then I fixed this method and change onAttachedToWindowMethod to onDetachedFromWindowMethod locally and it worked
AndroidAnnotations version: 4.3
Android compile SDK version: 26.0.1
your code
@OverRide
protected void onDetachedFromWindow() {
bus.unregister(this);
super.onDetachedFromWindow();
}
Expected generated code:
@OverRide
public void onDetachedFromWindow() {
getContext().unregisterReceiver(onActionDiscoveryStartedReceiver_);
getContext().unregisterReceiver(onActionDiscoveryFinishedReceiver_);
getContext().unregisterReceiver(onActionStateChangedReceiver_);
super.onDetachedFromWindow();
}
Actual generated code:
@OverRide
public void onDetachedFromWindow() {
getContext().unregisterReceiver(onActionDiscoveryStartedReceiver_);
getContext().unregisterReceiver(onActionDiscoveryFinishedReceiver_);
getContext().unregisterReceiver(onActionStateChangedReceiver_);
super.onAttachedToWindow();
}