javascript - 如何让 React Native 项目版本跨项目和平台无缝
问题描述
每次构建我的 React Native(不是 Expo)应用程序的构建版本时更改它是非常烦人的。
目前至少需要更改 4 个位置:
- /android/app/build.gradle
- /ios/项目名称/Info.plist
- 包.json
- 我的配置文件(但我认为我可以通过从 package.json 加载它来处理它)
有没有办法自动化这个?例如,当 package.json 版本更改时,每个地方都会更新?
解决方案
对于 android 你可以有/android/build.gradle
一个函数:
import groovy.json.JsonSlurper
def getNPMVersion() {
def file = new File("$rootDir/../package.json")
def packageJson = new JsonSlurper().parseText(file.text)
return packageJson["version"]
}
然后在你的/android/app/build.gradle
你会使用versionName getNPMVersion()
对于 ios,我很确定您需要一个覆盖Info.plist
推荐阅读
- javascript - 如何在 Openlayers 中获取绘制的多边形坐标?
- node.js - 建议命令不起作用,因为“TypeError:无法读取属性‘执行’未定义”
- python - 从 Bitbucket 存储库安装 Python 包时出现问题
- android - inappwebvew 中的 Flutter 不保留会话
- algorithm - 矩阵中两个单元格之间的最短路径
- xbrl - 无法打开 Arelle 菜单视图以使用 SEC 的 EdgarRenderer
- visual-studio - VS 2019 可以使用现有的 Python 虚拟环境吗?
- azure - 我是否必须将 Azure SignalR 用于部署到 Azure 的 SignalR 服务?
- python - 在 Python 中读取多个大文件时出现内存泄漏
- react-native - keyboardType="number-pad" 在 Android 中仍然显示小数点