是的,尽管它并不总是恒定的。
(我假设您所说的“恒定”是指相同的值,但如果您只是指它永远不会停止,那么您可以忽略有关其工作原理的额外解释。)
要理解“到目前为止下降”的逻辑,您可以查看React Native代码库。您将在FpsView.java文件中找到性能监视器的代码。在其中,您可以看到用于“到目前为止下降”代码的变量(droppedUIFrames
)(第67行)。如果您一直跟踪到底部,您就会到达使用mTotalFramesDropped
变量来跟踪“到目前为止丢失的帧数”的FramesDroppedRunnable类(第79行)。在这个类中,您只是更新报告的变量的循环。您将有兴趣的行是在第90行:
mTotalFramesDropped += mFrameCallback.getExpectedNumFrames() - mFrameCallback.getNumFrames();
从这个可以看出,是的,这个值是一个计数器,它只会增加而不会在性能监视器运行时被重置。您还可以看到它不是常量(固定值);在你的情况下,它可能显得恒定,因为您处于“hello world”屏幕,没有发生任何有趣的事情。