You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Expo开发React Native安卓应用遇ReferenceError: Can't find variable: Intl问题

解决Expo React Native安卓端ReferenceError: Can't find variable: Intl报错

问题核心

Expo环境下直接修改android/app/build.gradle的JSC配置不会生效,因为Expo会自动覆盖安卓构建相关的默认配置,必须通过Expo官方提供的配置方式指定国际化版本的JSC引擎。

解决方案一:使用expo-build-properties插件配置JSC变体

  1. 安装插件
expo install expo-build-properties
  1. 在app.json或app.config.js中添加配置
{
  "expo": {
    "plugins": [
      [
        "expo-build-properties",
        {
          "android": {
            "jsEngine": "jsc",
            "jscVersion": "org.webkit:android-jsc-intl:+"
          }
        }
      ]
    ]
  }
}
  1. 重新构建项目
    • 云构建:eas build --platform android
    • 本地构建:先执行expo prebuild --platform android,再运行npx react-native run-android

解决方案二:配合禁用Hermes引擎(可选)

如果项目不需要Hermes引擎,可在配置文件中明确指定使用JSC:

{
  "expo": {
    "android": {
      "jsEngine": "jsc"
    }
  }
}

此配置需和方案一中的expo-build-properties插件配置配合使用,确保加载国际化版本的JSC。

额外注意事项

  • 若之前手动修改过android目录的文件,需先清除本地构建缓存:
rm -rf android && expo prebuild --clean
  • Expo 45与expo-build-properties插件兼容,无需担心版本匹配问题。

内容的提问来源于stack exchange,提问作者Elena Martín Castillo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 07:26:08