Fixed
Status Update
Comments
il...@google.com <il...@google.com>
ap...@google.com <ap...@google.com> #2
See also
ap...@google.com <ap...@google.com> #3
Project: platform/frameworks/support
Branch: androidx-main
commit 1a48f33d2d01d135a0d647f83b1baaac10499ef0
Author: Chris Craik <ccraik@google.com>
Date: Tue Jan 25 12:35:23 2022
Clarify FrameTimingMetric names
Fixes: 216337830
Relnote: "Renamed FrameCpuTime -> FrameDurationCpu, FrameUiTime -> FrameDurationUi to clarify these are durations, not timestamps, and to match prefixes."
Test: ./gradlew benchmark:benchmark-common:cC
Test: TrivialListScrollBenchmark
Change-Id: I0eba35542431905ab926f5dc7db4ab6e292fde69
M benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/Metric.kt
M benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/FrameTimingQuery.kt
M benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/perfetto/FrameTimingQueryTest.kt
https://android-review.googlesource.com/1960660
Branch: androidx-main
commit 1a48f33d2d01d135a0d647f83b1baaac10499ef0
Author: Chris Craik <ccraik@google.com>
Date: Tue Jan 25 12:35:23 2022
Clarify FrameTimingMetric names
Fixes: 216337830
Relnote: "Renamed FrameCpuTime -> FrameDurationCpu, FrameUiTime -> FrameDurationUi to clarify these are durations, not timestamps, and to match prefixes."
Test: ./gradlew benchmark:benchmark-common:cC
Test: TrivialListScrollBenchmark
Change-Id: I0eba35542431905ab926f5dc7db4ab6e292fde69
M benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/Metric.kt
M benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/FrameTimingQuery.kt
M benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/perfetto/FrameTimingQueryTest.kt
il...@google.com <il...@google.com> #4
This decoupling has been complete and will be available in Lifecycle 2.5.0-alpha06.
Description
Component used: Lifecycle
Version used: 2.5.0-alpha01
Currently the call to
enableSavedStateHandles()
creates aViewModel
using theViewModelStore
. This requires that the ViewModelStore be set on any component attempting to make the call, but there are scenarios where the call toenableSavedStateHandles
needs to happen before that in particular in the Fragment and Navigation components where the call is not immediately made when the object is constructed or sometimes not at all.If we remove the reliance on
SavedStateHandles
(and therefore view models), we can lean into theSavedStateProvider
APIs and the call toenableSavedStateHandles()
can be made before theViewModelStore
is set.