# Leader coaching notes ## Bugs #### 1. Walk-through run multiple times <div style="width:100%;height:0px;position:relative;padding-bottom:166.667%;"><iframe src="https://streamable.com/e/iv2nuw?autoplay=1" frameborder="0" width="100%" height="100%" allowfullscreen allow="autoplay" style="width:100%;height:100%;position:absolute;left:0px;top:0px;overflow:hidden;"></iframe></div> --- #### 2. Splash screen takes time than usual on old devices --- #### 3. App keep crashing, when login button pressed: ![](https://i.imgur.com/Lj91U2Z.png) ``` 09-19 18:44:12.332 567 589 I ActivityManager: Displayed com.leaders.coaching.aad/.ui.activitys.LoginRegistration: +113ms 09-19 18:44:12.806 567 1086 I WindowManager: Destroying surface Surface(name=com.leaders.coaching.aad/com.leaders.coaching.aad.ui.activitys.IntroScreen) called by com.android.server.wm.WindowStateAnimator.destroySurface:2016 com.android.server.wm.WindowStateAnimator.destroySurfaceLocked:882 com.android.server.wm.WindowState.destroyOrSaveSurface:2100 com.android.server.wm.WindowManagerService.tryStartExitingAnimation:3030 com.android.server.wm.WindowManagerService.relayoutWindow:2910 com.android.server.wm.Session.relayout:224 android.view.IWindowSession$Stub.onTransact:286 com.android.server.wm.Session.onTransact:145 09-19 18:44:12.827 1937 1940 I art : Do partial code cache collection, code=125KB, data=79KB 09-19 18:44:12.827 1937 1940 I art : After code cache collection, code=125KB, data=79KB 09-19 18:44:12.827 1937 1940 I art : Increasing code cache capacity to 512KB 09-19 18:44:14.387 567 1049 I ActivityManager: START u0 {cmp=com.leaders.coaching.aad/.ui.activitys.HomeActivity (has extras)} from uid 10067 on display 0 09-19 18:44:14.492 1937 1937 D NetworkSecurityConfig: No Network Security Config specified, using platform default 09-19 18:44:14.629 1937 1937 I art : Starting a blocking GC Alloc 09-19 18:44:14.630 1937 1937 I art : Starting a blocking GC Alloc 09-19 18:44:14.634 1937 1937 I art : Starting a blocking GC Alloc 09-19 18:44:14.640 1937 1937 I art : Clamp target GC heap from 99MB to 96MB 09-19 18:44:14.640 1937 1937 I art : Alloc partial concurrent mark sweep GC freed 611(25KB) AllocSpace objects, 1(20KB) LOS objects, 13% free, 83MB/96MB, paused 130us total 5.540ms 09-19 18:44:14.640 1937 1937 I art : Starting a blocking GC Alloc 09-19 18:44:14.650 1937 1937 I art : Clamp target GC heap from 99MB to 96MB 09-19 18:44:14.650 1937 1937 I art : Alloc concurrent mark sweep GC freed 308(12KB) AllocSpace objects, 0(0B) LOS objects, 13% free, 83MB/96MB, paused 139us total 10.145ms 09-19 18:44:14.650 1937 1937 I art : Forcing collection of SoftReferences for 290MB allocation 09-19 18:44:14.650 1937 1937 I art : Starting a blocking GC Alloc 09-19 18:44:14.661 1937 1937 I art : Alloc concurrent mark sweep GC freed 2925(188KB) AllocSpace objects, 3(51MB) LOS objects, 33% free, 31MB/47MB, paused 247us total 10.162ms 09-19 18:44:14.661 1937 1937 W art : Throwing OutOfMemoryError "Failed to allocate a 304365804 byte allocation with 16777216 free bytes and 64MB until OOM" 09-19 18:44:14.661 1937 1937 I art : Starting a blocking GC Alloc 09-19 18:44:14.661 1937 1937 I art : Starting a blocking GC Alloc 09-19 18:44:14.663 1937 1937 I art : Starting a blocking GC Alloc 09-19 18:44:14.669 1937 1937 I art : Alloc partial concurrent mark sweep GC freed 90(2824B) AllocSpace objects, 0(0B) LOS objects, 33% free, 31MB/47MB, paused 133us total 6.271ms 09-19 18:44:14.669 1937 1937 I art : Starting a blocking GC Alloc 09-19 18:44:14.678 1937 1937 I art : Alloc concurrent mark sweep GC freed 4(112B) AllocSpace objects, 0(0B) LOS objects, 33% free, 31MB/47MB, paused 165us total 8.651ms 09-19 18:44:14.678 1937 1937 I art : Forcing collection of SoftReferences for 290MB allocation 09-19 18:44:14.678 1937 1937 I art : Starting a blocking GC Alloc 09-19 18:44:14.685 1937 1937 I art : Alloc concurrent mark sweep GC freed 3(72B) AllocSpace objects, 0(0B) LOS objects, 33% free, 31MB/47MB, paused 456us total 7.399ms 09-19 18:44:14.686 1937 1937 W art : Throwing OutOfMemoryError "Failed to allocate a 304365804 byte allocation with 16777216 free bytes and 64MB until OOM" 09-19 18:44:14.686 1937 1937 D skia : --- allocation failed for scaled bitmap 09-19 18:44:14.688 1937 1937 D AndroidRuntime: Shutting down VM 09-19 18:44:14.689 1937 1937 E AndroidRuntime: FATAL EXCEPTION: main 09-19 18:44:14.689 1937 1937 E AndroidRuntime: Process: com.leaders.coaching.aad, PID: 1937 09-19 18:44:14.689 1937 1937 E AndroidRuntime: java.lang.OutOfMemoryError: Failed to allocate a 304365804 byte allocation with 16777216 free bytes and 64MB until OOM 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at dalvik.system.VMRuntime.newNonMovableArray(Native Method) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:620) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:455) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:1152) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.content.res.ResourcesImpl.loadDrawableForCookie(ResourcesImpl.java:720) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.content.res.ResourcesImpl.loadDrawable(ResourcesImpl.java:571) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.content.res.Resources.getDrawable(Resources.java:767) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.content.res.XResources.getDrawable(XResources.java:790) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.content.Context.getDrawable(Context.java:525) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.core.content.ContextCompat.getDrawable(ContextCompat.java:455) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.appcompat.widget.ResourceManagerInternal.getDrawable(ResourceManagerInternal.java:144) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.appcompat.widget.ResourceManagerInternal.getDrawable(ResourceManagerInternal.java:132) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.appcompat.content.res.AppCompatResources.getDrawable(AppCompatResources.java:104) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.appcompat.widget.AppCompatImageHelper.setImageResource(AppCompatImageHelper.java:90) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.appcompat.widget.AppCompatImageView.setImageResource(AppCompatImageView.java:98) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.leaders.coaching.aad.ui.adapters.ImageSliderAdapter$CustomViewHolder.onbind(ImageSliderAdapter.kt:28) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.leaders.coaching.aad.ui.adapters.ImageSliderAdapter.onBindViewHolder(ImageSliderAdapter.kt:18) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.leaders.coaching.aad.ui.adapters.ImageSliderAdapter.onBindViewHolder(ImageSliderAdapter.kt:13) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.smarteist.autoimageslider.SliderViewAdapter.instantiateItem(SliderViewAdapter.java:37) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.smarteist.autoimageslider.InfiniteAdapter.InfinitePagerAdapter.instantiateItem(InfinitePagerAdapter.java:77) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.smarteist.autoimageslider.SliderPager.addNewItem(SliderPager.java:998) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.smarteist.autoimageslider.SliderPager.populate(SliderPager.java:1180) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.smarteist.autoimageslider.SliderPager.populate(SliderPager.java:1080) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.smarteist.autoimageslider.SliderPager.onMeasure(SliderPager.java:1629) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.cardview.widget.CardView.onMeasure(CardView.java:260) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.google.android.material.card.MaterialCardView.onMeasure(MaterialCardView.java:159) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.widget.ConstraintLayout$Measurer.measure(ConstraintLayout.java:763) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.solver.widgets.analyzer.BasicMeasure.measure(BasicMeasure.java:426) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.solver.widgets.analyzer.BasicMeasure.measureChildren(BasicMeasure.java:105) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.solver.widgets.analyzer.BasicMeasure.solverMeasure(BasicMeasure.java:247) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.solver.widgets.ConstraintWidgetContainer.measure(ConstraintWidgetContainer.java:117) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.widget.ConstraintLayout.resolveSystem(ConstraintLayout.java:1532) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.widget.ConstraintLayout.onMeasure(ConstraintLayout.java:1607) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.core.widget.NestedScrollView.measureChildWithMargins(NestedScrollView.java:1599) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.core.widget.NestedScrollView.onMeasure(NestedScrollView.java:585) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.widget.ConstraintLayout$Measurer.measure(ConstraintLayout.java:763) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.solver.widgets.analyzer.BasicMeasure.measure(BasicMeasure.java:426) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.solver.widgets.analyzer.BasicMeasure.measureChildren(BasicMeasure.java:105) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.solver.widgets.analyzer.BasicMeasure.solverMeasure(BasicMeasure.java:247) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.solver.widgets.ConstraintWidgetContainer.measure(ConstraintWidgetContainer.java:117) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.widget.ConstraintLayout.resolveSystem(ConstraintLayout.java:1532) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.constraintlayout.widget.ConstraintLayout.onMeasure(ConstraintLayout.java:1607) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:760) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.google.android.material.appbar.HeaderScrollingViewBehavior.onMeasureChild(HeaderScrollingViewBehavior.java:99) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior.onMeasureChild(AppBarLayout.java:1996) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:831) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.drawerlayout.widget.DrawerLayout.onMeasure(DrawerLayout.java:1156) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:146) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.LinearLayout.measureVertical(LinearLayout.java:758) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.LinearLayout.onMeasure(LinearLayout.java:640) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.LinearLayout.measureVertical(LinearLayout.java:758) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.LinearLayout.onMeasure(LinearLayout.java:640) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.android.internal.policy.DecorView.onMeasure(DecorView.java:687) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.View.measure(View.java:19733) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2271) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1358) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1607) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1246) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6301) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.Choreographer$CallbackRecord.run(Choreographer.java:871) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.Choreographer.doCallbacks(Choreographer.java:683) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.Choreographer.doFrame(Choreographer.java:619) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:857) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:751) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:95) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.os.Looper.loop(Looper.java:154) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6077) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755) 09-19 18:44:14.689 1937 1937 E AndroidRuntime: at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:107) 09-19 18:44:14.691 567 1103 W ActivityManager: Force finishing activity com.leaders.coaching.aad/.ui.activitys.HomeActivity 09-19 18:44:14.692 567 1103 W ActivityManager: Force finishing activity com.leaders.coaching.aad/.ui.activitys.LoginRegistration ``` --- ## UI/UX #### 1. Reduce animations. #### 2. Enabling guest mode to let users explore app contents, then they can login or register.