For AI agents: the complete documentation index is available at /next/llms.txt, the full documentation bundle is available at /next/llms-full.txt, and this page is available as Markdown at /next/api/lynx-api/performance-api/performance-entry/load-bundle-entry.md.
Lynx
  • English
  • LoadBundleEntry

    LoadBundle refers to the initial frame rendering pipeline triggered by LynxView loading and executing the TemplateBundle. LoadBundleEntry is used to record the performance data of this rendering pipeline and inherits from PipelineEntry.

    The LoadBundle process flowchart is as follows:

    Tip

    If you fail to receive LoadBundleEntry, it may be due to the following reasons:

    1. Rendering not triggered

    The rendering pipeline is not executed, typically because:

    • LynxView container state issues: Width/Height is 0, not in the viewport, or not added to the window.
    • Business logic renders no content: For example, in ReactLynx, the component's render() function returns null because data is not ready.

    2. Listener registered too late

    LoadBundleEntry is triggered only once upon completion of initial rendering. It is recommended to register the listener as early as possible:

    • Register in constructor for class components.
    • register in useMemo for functional components.

    Example

    This example demonstrates how to obtain a LoadBundleEntry.

    Instance properties

    entryType

    entryType: string;

    The type of the performance event; the value for all instances of this class is fixed as pipeline.

    name

    name: string;

    The specific name of the performance event; the value for all instances of this class is fixed as loadBundle.

    identifier

    identifier: string;

    A marker for a particular rendering pipeline; the value for all instances of this class is fixed as an empty string.

    loadBundleStart

    loadBundleStart: number;

    The timestamp for the start of loading and executing the TemplateBundle. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    loadBundleEnd

    loadBundleEnd: number;

    The timestamp for the end of loading and executing the TemplateBundle. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    parseStart

    parseStart: number;

    The timestamp for the start of parsing the TemplateBundle. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    parseEnd

    parseEnd: number;

    The timestamp for the end of parsing the TemplateBundle. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    loadBackgroundStart

    loadBackgroundStart: number;

    The timestamp for the start of loading and executing the background thread scripts in the TemplateBundle. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    loadBackgroundEnd

    loadBackgroundEnd: number;

    The timestamp for the end of loading and executing the background thread scripts in the TemplateBundle. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    pipelineStart

    pipelineStart: number;

    The timestamp for the start of the rendering pipeline. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    pipelineEnd

    pipelineEnd: number;

    The timestamp for the end of the rendering pipeline. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    mtsRenderStart

    mtsRenderStart: number;

    The timestamp for the start of executing the main thread scripts to build the Element Tree. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    mtsRenderEnd

    mtsRenderEnd: number;

    The timestamp for the end of executing the main thread scripts to build the Element Tree. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    resolveStart

    resolveStart: number;

    The timestamp for the start of calculating Element styles. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    resolveEnd

    resolveEnd: number;

    The timestamp for the end of calculating Element styles. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    layoutStart

    layoutStart: number;

    The timestamp for the start of layout calculations. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    layoutEnd

    layoutEnd: number;

    The timestamp for the end of layout calculations. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    paintingUiOperationExecuteStart

    paintingUiOperationExecuteStart: number;

    The timestamp for the start of executing UI operations related to painting. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    paintingUiOperationExecuteEnd

    paintingUiOperationExecuteEnd: number;

    The timestamp for the end of executing UI operations related to painting. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    layoutUiOperationExecuteStart

    layoutUiOperationExecuteStart: number;

    The timestamp for the start of executing UI operations related to layout. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    layoutUiOperationExecuteEnd

    layoutUiOperationExecuteEnd: number;

    The timestamp for the end of executing UI operations related to layout. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    paintEnd

    paintEnd: number;

    The timestamp for the end of completing the final pixelation based on UI and UITree. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    frameworkPipelineTiming

    frameworkPipelineTiming: FrameworkPipelineTiming[keyof FrameworkPipelineTiming];

    Performance data for key stages in Framework Rendering. The type is FrameworkPipelineTiming.

    hostPlatformTiming

    hostPlatformTiming: AndroidHostPlatformTiming |
      HarmonyHostPlatformTiming |
      IOSHostPlatformTiming;

    Performance data for platform-specific key stages in Lynx Pipeline, with type AndroidHostPlatformTiming | HarmonyHostPlatformTiming | IOSHostPlatformTiming.

    loadCoreStart

    loadCoreStart: number;

    The timestamp for the start of initializing the background thread runtime environment. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    loadCoreEnd

    loadCoreEnd: number;

    The timestamp for the end of initializing the background thread runtime environment. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    openTime

    openTime?: number;

    The time when the container starts opening the Lynx page. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    containerInitStart

    containerInitStart?: number;

    The timestamp for the start of container initialization. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    containerInitEnd

    containerInitEnd?: number;

    The timestamp for the end of container initialization. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    prepareTemplateStart

    prepareTemplateStart?: number;

    The time when the container starts preparing the TemplateBundle. "Preparation" refers to the container obtaining the TemplateBundle through any means such as network download or loading local cache. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    prepareTemplateEnd

    prepareTemplateEnd?: number;

    The time when the container completes preparing the TemplateBundle. "Preparation" refers to the container obtaining the TemplateBundle through any means such as network download or loading local cache. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    createLynxStart

    createLynxStart: number;

    The timestamp for the start of creating the LynxView. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    createLynxEnd

    createLynxEnd: number;

    The timestamp for the end of creating the LynxView. This timestamp is represented as a floating-point Unix timestamp (in milliseconds) with three decimal places. For example: 1739594612307.429.

    fcp

    fcp?: PerformanceMetric;

    The time taken from preparing the TemplateBundle to completing the first rendering, with data type PerformanceMetric.

    Calculation formula: fcp = LoadBundleEntry.paintEnd - InitContainerEntry.prepareTemplateStart.

    lynxFcp

    lynxFcp: PerformanceMetric;

    The time taken from loading the TemplateBundle to completing the first rendering, with data type PerformanceMetric.

    Calculation formula: lynxFcp = LoadBundleEntry.paintEnd - LoadBundleEntry.loadBundleStart.

    totalFcp

    totalFcp?: PerformanceMetric;

    The time taken from the user opening the page to completing the first rendering, with data type PerformanceMetric.

    Calculation formula: totalFcp = LoadBundleEntry.paintEnd - InitContainerEntry.openTime.

    Compatibility

    LCD tables only load in the browser

    Except as otherwise noted, this work is licensed under a Creative Commons Attribution 4.0 International License, and code samples are licensed under the Apache License 2.0.