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

React Native Versioning为何寻找pre文件夹?版本构建号同步缺什么?

问题解答

一、"pre"文件夹报错的原因

你遇到的pre/package.json找不到的问题,是因为package.json里的preversion脚本参数写错了。

npm的preversion是生命周期钩子,运行npm version时会自动触发这个脚本。你的scripts里应该写了类似:

"preversion": "react-native-version pre"

这里的pre是多余的参数——react-native-version工具不需要这个参数,它会把pre当成要读取的目录路径,所以才会去找/Projects/ReactNative/SimpleParamPassing/pre/package.json,而这个目录根本不存在。

解决方法:把preversion脚本改成"react-native-version"(不带pre参数),或者根据你需要的同步规则添加正确参数,比如react-native-version --ios --android。

二、iOS/Android版本号/构建号自动同步缺少的配置

要实现双端版本号、构建号自动同步,还需要补充以下配置:

1. 配置react-native-version的同步规则

在package.json根节点添加react-native-version字段,明确指定iOS和Android的版本、构建号同步逻辑:

"react-native-version": {
  "ios": {
    "version": "sync", // 同步package.json的version到iOS的CFBundleShortVersionString
    "build": "increment" // 每次构建自动递增iOS的CFBundleVersion
  },
  "android": {
    "version": "sync", // 同步package.json的version到Android的versionName
    "build": "increment" // 每次构建自动递增Android的versionCode
  },
  "podfile": true // 如果用CocoaPods,同步Podfile.lock的版本(可选)
}

2. 修正npm脚本钩子

调整package.json的scripts,确保版本变更流程正确:

"scripts": {
  "preversion": "react-native-version", // 版本变更前同步双端版本号
  "postversion": "bundle exec fastlane bump" // 版本变更后用Fastlane处理构建号(可选,看你需求)
}

这样运行npm version patch --no-git-tag-version时,会先自动同步双端版本号,再触发Fastlane的构建号更新。

3. 配置Fastlane的bump逻辑

在Fastfile里定义bump lane,确保构建号的更新和react-native-version不冲突。比如:

lane :bump do
  # iOS:递增构建号(如果react-native-version没处理的话)
  increment_build_number(
    xcodeproj: "./ios/YourProjectName.xcodeproj",
    target: "YourTargetName" # 替换成你的iOS Target名
  )

  # Android:递增versionCode(或者同步package.json的版本)
  gradle(
    task: "assemble",
    properties: {
      "android.incrementVersionCode" => true
    }
  )
end

如果react-native-version已经配置了build: "increment",Fastlane的这部分可以省略,避免重复递增。

4. 确保文件权限

确认react-native-version和Fastlane有修改以下文件的权限:

  • iOS:ios/YourProject/Info.plist、ios/YourProject.xcodeproj/project.pbxproj
  • Android:android/app/build.gradle

内容的提问来源于stack exchange,提问作者justdan0227

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 22:04:59