This documentation is available as Markdown for AI agents and LLMs. See the full Markdown index or append .md to any documentation URL.

EAS Observe 故障排除

编辑页面

常见 EAS Observe 问题的解决方案。


常见问题

指标未出现在仪表盘中

  1. 确保在安装 expo-observe 之后已创建一个新构建。指标仅从包含该库的构建中收集。
  2. 检查你在 EAS 仪表盘中查看的是正确的项目。
  3. 如果在调试构建中测试,请确保通过 configure()dispatchInDebug 设置为 true。参见 在开发中启用指标

未显示首次渲染时间

请验证你的根布局已使用根 HOC 包裹:

import { ObserveRoot } from 'expo-observe'; function RootLayout() { return (/* 你的布局 */); } export default ObserveRoot.wrap(RootLayout);

未显示可交互时间

此指标需要手动埋点。请确认:

  1. 你是在隐藏启动画面后调用 markInteractive()(来自 useObserve())。
  2. 该调用实际上已经执行(添加一个 console.log 来验证)。
从 expo-eas-observe 迁移

如果你是私有预览的参与者,并且之前使用过 expo-eas-observe,请按照以下步骤迁移到 expo-observe

1

替换包

Terminal
npx expo install expo-observe
npm uninstall expo-eas-observe

如果你之前将 expo-eas-client 作为单独依赖安装过,可以将其移除:

Terminal
npm uninstall expo-eas-client

2

更新导入

- import AppMetrics from 'expo-eas-observe'; + import { AppMetrics } from 'expo-observe';

3

使用根 HOC 替代手动调用 markFirstRender()

不要再手动调用 markFirstRender(),而是使用适用于你 SDK 的根 HOC 包裹根布局。这会自动处理该指标的测量。

之前:

import { useEffect } from 'react'; import AppMetrics from 'expo-eas-observe'; export default function RootLayout() { useEffect(() => { AppMetrics.markFirstRender(); }, []); return (/* 你的布局 */); }

之后:

import { ObserveRoot } from 'expo-observe'; function RootLayout() { return (/* 你的布局 */); } export default ObserveRoot.wrap(RootLayout);

4

创建一个新构建

完成迁移后,为你的应用创建一个新构建:

Terminal
eas build