@Override
 public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.activity_b);
   getWindow().getAttributes().windowAnimations = R.style.Fade;
   mActivityName = getString(R.string.activity_b_label);
   mStatusView = (TextView) findViewById(R.id.status_view_b);
   mStatusAllView = (TextView) findViewById(R.id.status_view_all_b);
   mStatusTracker.setStatus(mActivityName, getString(R.string.on_create));
   Utils.printStatus(mStatusView, mStatusAllView);
 }
 @Override
 protected void onDestroy() {
   super.onDestroy();
   mStatusTracker.setStatus(mActivityName, getString(R.string.on_destroy));
 }
 @Override
 protected void onStop() {
   super.onStop();
   mStatusTracker.setStatus(mActivityName, getString(R.string.on_stop));
 }
 @Override
 protected void onPause() {
   super.onPause();
   mStatusTracker.setStatus(mActivityName, getString(R.string.on_pause));
   Utils.printStatus(mStatusView, mStatusAllView);
 }
/** Example Activity to demonstrate the lifecycle callback methods. */
public class ActivityB extends Activity {

  private String mActivityName;
  private TextView mStatusView;
  private TextView mStatusAllView;
  private StatusTracker mStatusTracker = StatusTracker.getInstance();

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_b);
    getWindow().getAttributes().windowAnimations = R.style.Fade;
    mActivityName = getString(R.string.activity_b_label);
    mStatusView = (TextView) findViewById(R.id.status_view_b);
    mStatusAllView = (TextView) findViewById(R.id.status_view_all_b);
    mStatusTracker.setStatus(mActivityName, getString(R.string.on_create));
    Utils.printStatus(mStatusView, mStatusAllView);
  }

  @Override
  protected void onStart() {
    super.onStart();
    mStatusTracker.setStatus(mActivityName, getString(R.string.on_start));
    Utils.printStatus(mStatusView, mStatusAllView);
  }

  @Override
  protected void onRestart() {
    super.onRestart();
    mStatusTracker.setStatus(mActivityName, getString(R.string.on_restart));
    Utils.printStatus(mStatusView, mStatusAllView);
  }

  @Override
  protected void onResume() {
    super.onResume();
    mStatusTracker.setStatus(mActivityName, getString(R.string.on_resume));
    Utils.printStatus(mStatusView, mStatusAllView);
  }

  @Override
  protected void onPause() {
    super.onPause();
    mStatusTracker.setStatus(mActivityName, getString(R.string.on_pause));
    Utils.printStatus(mStatusView, mStatusAllView);
  }

  @Override
  protected void onStop() {
    super.onStop();
    mStatusTracker.setStatus(mActivityName, getString(R.string.on_stop));
  }

  @Override
  protected void onDestroy() {
    super.onDestroy();
    mStatusTracker.setStatus(mActivityName, getString(R.string.on_destroy));
  }

  public void startDialog(View v) {
    Intent intent = new Intent(ActivityB.this, DialogActivity.class);
    startActivity(intent);
  }

  public void startActivityA(View v) {
    Intent intent = new Intent(ActivityB.this, ActivityA.class);
    startActivity(intent);
  }

  public void startActivityC(View v) {
    Intent intent = new Intent(ActivityB.this, ActivityC.class);
    startActivity(intent);
  }

  public void finishActivityB(View v) {
    ActivityB.this.finish();
  }
}