lifecycle logging added

This commit is contained in:
Gavriil Sitnikov 2017-01-12 21:28:46 +03:00
parent d1361247ca
commit 49d377cdff
3 changed files with 30 additions and 5 deletions

View File

@ -42,6 +42,7 @@ import ru.touchin.roboswag.components.navigation.fragments.ViewControllerFragmen
import ru.touchin.roboswag.components.utils.BaseLifecycleBindable;
import ru.touchin.roboswag.components.utils.LifecycleBindable;
import ru.touchin.roboswag.components.utils.UiUtils;
import ru.touchin.roboswag.core.log.Lc;
import ru.touchin.roboswag.core.utils.ShouldNotHappenException;
import rx.Observable;
import rx.Subscription;
@ -236,6 +237,7 @@ public class ViewController<TActivity extends ViewControllerActivity<?>,
*/
@CallSuper
public void onCreate() {
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
baseLifecycleBindable.onCreate();
}
@ -245,6 +247,7 @@ public class ViewController<TActivity extends ViewControllerActivity<?>,
*/
@CallSuper
public void onStart() {
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
baseLifecycleBindable.onStart();
}
@ -253,7 +256,7 @@ public class ViewController<TActivity extends ViewControllerActivity<?>,
* Usually it is indicating that user can't see fragment on screen and useful to track analytics events.
*/
public void onAppear() {
//do nothing
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
}
/**
@ -262,7 +265,7 @@ public class ViewController<TActivity extends ViewControllerActivity<?>,
*/
@CallSuper
public void onResume() {
//do nothing
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
}
/**
@ -280,7 +283,7 @@ public class ViewController<TActivity extends ViewControllerActivity<?>,
*/
@CallSuper
public void onPause() {
//do nothing
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
}
/**
@ -290,7 +293,7 @@ public class ViewController<TActivity extends ViewControllerActivity<?>,
*/
@CallSuper
public void onSaveInstanceState(@NonNull final Bundle savedInstanceState) {
// do nothing
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
}
/**
@ -298,7 +301,7 @@ public class ViewController<TActivity extends ViewControllerActivity<?>,
* Usually it is indicating that user can't see fragment on screen and useful to track analytics events.
*/
public void onDisappear() {
//do nothing
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
}
/**
@ -307,6 +310,7 @@ public class ViewController<TActivity extends ViewControllerActivity<?>,
*/
@CallSuper
public void onStop() {
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
baseLifecycleBindable.onStop();
}
@ -316,6 +320,7 @@ public class ViewController<TActivity extends ViewControllerActivity<?>,
*/
@CallSuper
public void onDestroy() {
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
baseLifecycleBindable.onDestroy();
destroyed = true;
}

View File

@ -38,6 +38,8 @@ import java.util.ArrayList;
import ru.touchin.roboswag.components.utils.BaseLifecycleBindable;
import ru.touchin.roboswag.components.utils.LifecycleBindable;
import ru.touchin.roboswag.components.utils.UiUtils;
import ru.touchin.roboswag.core.log.Lc;
import rx.Observable;
import rx.Subscription;
import rx.functions.Action0;
@ -76,6 +78,7 @@ public abstract class BaseActivity extends AppCompatActivity
@Override
protected void onCreate(@Nullable final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
baseLifecycleBindable.onCreate();
restoreLastActivityResult(savedInstanceState);
}
@ -92,6 +95,7 @@ public abstract class BaseActivity extends AppCompatActivity
@Override
protected void onActivityResult(final int requestCode, final int resultCode, final Intent data) {
super.onActivityResult(requestCode, resultCode, data);
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this) + " requestCode: " + requestCode + "; resultCode: " + resultCode);
if (resultCode == RESULT_OK) {
lastActivityResult.onNext(new Pair<>(requestCode, data));
}
@ -114,17 +118,20 @@ public abstract class BaseActivity extends AppCompatActivity
@Override
protected void onStart() {
super.onStart();
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
baseLifecycleBindable.onStart();
}
@Override
protected void onResume() {
super.onResume();
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
resumed = true;
}
@Override
protected void onPause() {
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
resumed = false;
super.onPause();
}
@ -132,6 +139,7 @@ public abstract class BaseActivity extends AppCompatActivity
@Override
protected void onSaveInstanceState(@NonNull final Bundle stateToSave) {
super.onSaveInstanceState(stateToSave);
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
if (lastActivityResult.getValue() != null) {
stateToSave.putInt(ACTIVITY_RESULT_CODE_EXTRA, lastActivityResult.getValue().first);
if (lastActivityResult.getValue().second != null) {
@ -140,14 +148,22 @@ public abstract class BaseActivity extends AppCompatActivity
}
}
@Override
public void onLowMemory() {
super.onLowMemory();
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
}
@Override
protected void onStop() {
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
baseLifecycleBindable.onStop();
super.onStop();
}
@Override
protected void onDestroy() {
UiUtils.UI_LIFECYCLE_LC_GROUP.i(Lc.getCodePoint(this));
baseLifecycleBindable.onDestroy();
super.onDestroy();
}

View File

@ -57,6 +57,10 @@ public final class UiUtils {
* Logging group to log UI metrics (like inflation or layout time etc.).
*/
public static final LcGroup UI_METRICS_LC_GROUP = new LcGroup("UI_METRICS");
/**
* Logging group to log UI lifecycle (onCreate, onStart, onResume etc.).
*/
public static final LcGroup UI_LIFECYCLE_LC_GROUP = new LcGroup("UI_LIFECYCLE");
/**
* Delay to let user view ripple effect before screen changed.
*/