@Override
 protected void onCreate(Bundle savedInstanceState) {
   Injector injector = Proton.getInjector(this);
   mObserverManager = injector.getInstance(ObserverManager.class);
   mStateEventObserver = injector.getInstance(StateEventObserver.class);
   injector.inject(this);
   super.onCreate(savedInstanceState);
   mObserverManager.fire(new OnCreateEvent(savedInstanceState));
 }
 @Override
 protected void onDestroy() {
   try {
     mObserverManager.fire(new OnDestroyEvent());
   } finally {
     try {
       Proton.destroyInjector(this);
     } finally {
       super.onDestroy();
     }
   }
 }