public final class WindowContentFrameStats
extends FrameStats implements Parcelable
| java.lang.Object | ||
| android.view.FrameStats | ||
| android.view.WindowContentFrameStats | ||
该类包含窗口内容框架统计信息。 例如,当一个视图滚动时,窗口内容是百帧。 帧统计数据是从getStartTimeNano()到getEndTimeNano()的时间间隔的快照。
关键的想法是,为了提供流畅的用户体验,应用程序必须在通过调用getRefreshPeriodNano()获得的特定时间间隔内绘制一帧。 如果应用程序在每个刷新周期都不呈现一个帧,则用户将看到不规则的UI过渡。
应用程序通过同步地将其内容呈现在缓存中,然后发布或张贴应用程序通过GL异步呈现内容的缓存来发布用于呈现的帧。 在框架被发布并呈现之后(可能是异步的)它被呈现给用户。 一个帧被张贴的时间可以通过获得getFramePostedTimeNano(int)通过,帧内容被渲染的时间和准备dsiplay(GL情况下) getFrameReadyTimeNano(int) ,以及时的帧经由在屏幕上呈现getFramePresentedTimeNano(int) 。
Inherited constants |
|---|
android.view.FrameStats
|
android.os.Parcelable
|
Fields |
|
|---|---|
public static final Creator<WindowContentFrameStats> |
CREATOR |
公共方法(Public methods) |
|
|---|---|
int |
describeContents() 描述此Parcelable实例的封送表示中包含的特殊对象的种类。 |
long |
getFramePostedTimeNano(int index) 获取给定索引处的帧由制作者发布(例如, |
long |
getFrameReadyTimeNano(int index) 获取给定索引处的帧可供演示的时间。 |
String |
toString() 返回对象的字符串表示形式。 |
void |
writeToParcel(Parcel parcel, int flags) 将此对象平铺到一个包裹中。 |
继承方法(Inherited methods) |
|
|---|---|
android.view.FrameStats
|
|
java.lang.Object
|
|
android.os.Parcelable
|
|
int describeContents ()
描述此Parcelable实例的封送表示中包含的特殊对象的种类。 例如,如果对象将在writeToParcel(Parcel, int)的输出中包含writeToParcel(Parcel, int) ,则此方法的返回值必须包含CONTENTS_FILE_DESCRIPTOR位。
| 返回(Returns) | |
|---|---|
int |
a bitmask indicating the set of special object types marshaled by this Parcelable object instance. |
long getFramePostedTimeNano (int index)
获取给定索引处的帧由制作者发布(例如应用程序)。 它可以显式设置或默认为呈现缓冲区的时间。
注意:可以发布一个框架,并仍然在GL中异步渲染它的内容。 为了获得帧内容完全呈现的时间并准备好显示调用getFrameReadyTimeNano(int) 。
| 参数(Parameters) | |
|---|---|
index |
int: The frame index. |
| 返回(Returns) | |
|---|---|
long |
The posted time in nanoseconds. |
long getFrameReadyTimeNano (int index)
获取给定索引处的帧可供演示的时间。
注意:可以发布一个框架,并仍然在GL中异步渲染它的内容。 在这种情况下,这是帧内容完全呈现的时间。
| 参数(Parameters) | |
|---|---|
index |
int: The frame index. |
| 返回(Returns) | |
|---|---|
long |
The ready time in nanoseconds or UNDEFINED_TIME_NANO if the frame is not ready yet. |
String toString ()
返回对象的字符串表示形式。 通常, toString方法会返回一个“文本表示”该对象的字符串。 结果应该是一个简洁但内容丰富的表述,对于一个人来说很容易阅读。 建议所有子类重写此方法。
类Object的toString方法返回一个字符串,其中包含对象为实例的类的名称,符号字符“ @ ”以及对象的哈希代码的无符号十六进制表示形式。 换句话说,这个方法返回一个字符串,其值等于:
getClass().getName() + '@' + Integer.toHexString(hashCode())
| 返回(Returns) | |
|---|---|
String |
a string representation of the object. |
void writeToParcel (Parcel parcel, int flags)
将此对象平铺到一个包裹中。
| 参数(Parameters) | |
|---|---|
parcel |
Parcel: The Parcel in which the object should be written. |
flags |
int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE. |