gpt4 book ai didi

react-native - 我怎么知道我的 react-native 应用程序运行顺利并且没有风险?

转载 作者:行者123 更新时间:2023-12-04 15:45:14 26 4
gpt4 key购买 nike

有什么好方法可以知道我们的 react-native 应用程序运行良好吗?

虽然我知道有一个 perf monitor当我启用 Perf Monitor ,这里有一些选项,我不知道它们是什么意思。

  • UI:60.0 fps ==> 这里 60.0 有时在我使用我的应用程序时会消失。
  • 到目前为止 X 掺杂 ==> 这里的 x 是我的正在增加的数字,它甚至达到了 150,例如:
  • 150 dropped so far
  • X 口吃 (4+) 到目前为止 ==> 这里 x 也在增加

  • 喜欢: 12 stutters (4+) so far
  • JS:60.0 fps ==> 这里 60.0 在我使用应用程序时减少了。

  • 最后是什么 fps它自己在 react 原生?

    最佳答案

    FPS 的意思是“每秒帧数”。大多数情况下,“流畅”的应用程序应该以 60fps 的速度运行。现在大多数手机的显示屏都是 60hz(意味着它们每秒只能刷新 60 次),因此只有高端手机才能每秒显示 60 帧以上。您可以采取一些措施来确保您的 RN 应用程序以最佳速度运行。

  • 您可能已经知道穿越“桥梁”(Javascript -> Native)很慢,并且会导致卡顿/低 FPS。有很多资料详细解释了这座桥是如何工作的,所以我就不多说了。尽量减少屏幕转换或动画期间正在完成的工作量(特别是桥接)。您可以使用 InteractionManager 来做到这一点。应用程序接口(interface)。阅读更多相关信息 here .
  • 不要忘记阅读 Performance 上的官方文档.
  • 如果您在打开新屏幕后立即注意到延迟,请尝试推迟渲染,直到屏幕完全过渡到视口(viewport)。如何执行此操作的示例:


  • import { View, InteractionManager } from 'react-native';

    class Example extends Component {
    constructor(props) {
    super(props);

    this.state = { ready: false };
    }

    componentDidMount() {
    // After all interactions have been finished we swich the "ready" state variable to true, and only then your component will be rendered.
    InteractionManager.runAfterInteractions(() => {
    this.setState({ ready: true });
    })
    }

    render() {
    if (!this.state.ready) {
    return;
    }

    // Render only when this.state.ready is true (after all interactions have been finalised);
    return (
    <View></View>
    );
    }
    }

    关于react-native - 我怎么知道我的 react-native 应用程序运行顺利并且没有风险?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56119728/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com