【设置版本号】React Native 通过配置文件package.json设置 Android安卓和iOS版本号

2,601 阅读1分钟

目录:

  1. 版本说明
  2. 安卓配置内容
  3. iOS配置内容
  4. 最终效果(修改配置文件package.json,安卓和iOS自动修改版本号)

一、版本说明

本机系统: Mac
Android studio: 3.6.2
Xcode: 11.4

修改package.json配置

// 希望达到的效果是,修改此处版本号,运行安卓、iOS,版本号自动同步修改
{
  ...
  "version": "1.2.2",
  ...
}
 

二、安卓配置内容 ,参考这里

2.1、修改文件 android/app/build.gradle,增加以下内容

 
 import groovy.json.JsonSlurper // 顶部引入此包
 
 ......
 
 //获取配置文件的版本信息
def getAppVersion() {
    def inputFile = new File("../package.json")
    def packageJson = new JsonSlurper().parseText(inputFile.text)
    return packageJson["version"]
} // 新增这里

def appVersion = getAppVersion() // 新增这里

android {
    ......
    defaultConfig {
        ......
        versionName appVersion // 修改这里
        ......
    }
    
}
 
 ......
  

2.2、参考下图

三、iOS配置内容

3.1、用 Xcode 打开 PROJECT_NAME.xcodeproj , 修改

PROJECT_NAME ---> TARGETS ---> Build Phases ---> 添加Run Script , 添加下方 sell 代码


PACKAGE_VERSION=$(cat ../package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]')

/usr/libexec/PlistBuddy -c "Set :CFBundleShortVersionString $PACKAGE_VERSION" "${PROJECT_DIR}/${INFOPLIST_FILE}"

3.2、具体参考下图



四、最终效果(修改配置文件package.json,安卓和IOS自动修改版本号)

4.1、重新打开 Android studio 运行安卓环境,即可生效 ✌️

4.2、重新打开 Xcode 运行 iOS 环境,即可生效 ✌️

写给自己的随笔,有问题欢迎指出