How to update version number of react native app

前端 未结 6 1379
时光说笑
时光说笑 2020-12-12 10:49

I am using React native with Android. How can I update version number in the app? As I am getting this error.

I am generating file as per this url https://facebook.g

相关标签:
6条回答
  • 2020-12-12 11:23

    You should be changing your versionCode and versionName in android/app/build.gradle:

    android {
    
        defaultConfig {
    
            versionCode 1
            versionName "1.0"
    
            {...}
        }
    
        {...}
    }
    
    0 讨论(0)
  • 2020-12-12 11:30

    For those wanting to automate this, and have iOS at the same time, you can use react-native-version to set the version numbers.

    All you need to do is update your version number inside the package.json file and run the following:

    $ npx react-native-version --never-amend
    
    [RNV] Versioning Android...
    [RNV] Android updated
    [RNV] Versioning iOS...
    [RNV] iOS updated
    [RNV] Done
    ✨  Done in 0.39s.
    

    I hope this can help others.

    0 讨论(0)
  • 2020-12-12 11:38

    If someone is facing

    wrong version code eg - 31284

    Then make sure to not use SeparateBuildPerCPUArchitecture in android/app/build.gradle

    def enableSeparateBuildPerCPUArchitecture = false

    and

    to update the version code and name change in android/app/build.gradle:

    android {
    
    defaultConfig {
    
        versionCode 1
        versionName "1.0"
    
        {...}
    }
    
    {...}
    }
    
    0 讨论(0)
  • 2020-12-12 11:41

    Set the versionCode under android in app.json:

    {
      "expo": {
        "name": "App Name",
    ...
        "android": {
          "package": "com.app.name",
          "permissions": [],
          "versionCode": 2
        }
      }
    }
    

    ref:https://docs.expo.io/versions/latest/workflow/configuration/#versioncodeversion-number-required-by-google-play-increment-by-one-for-each-release-must-be-an-integer-httpsdeveloperandroidcomstudiopublishversioninghtml

    0 讨论(0)
  • 2020-12-12 11:42

    @Joseph Roque is correct, you need to update the version numbers in android/app/build.gradle.

    Here's how I automate this and tie it into the package's version in package.json and git commits.

    In android/app/build.gradle:

    /* Near the top */
    
    import groovy.json.JsonSlurper
    
    def getNpmVersion() {
        def inputFile = new File("../package.json")
        def packageJson = new JsonSlurper().parseText(inputFile.text)
        return packageJson["version"]
    }
    /* calculated from git commits to give sequential integers */
    def getGitVersion() {
        def process = "git rev-list master --first-parent --count".execute()
        return process.text.toInteger()
    }
    
    
    ......
    
    
    def userVer = getNpmVersion()
    def googleVer = getGitVersion()
    
    android {
    ...
        defaultConfig {
            .....
            versionCode googleVer
            versionName userVer
    
            ndk {
                abiFilters "armeabi-v7a", "x86"
            }
        }
    

    Notes:

    • It's important that versionCode is an integer - so we can't use semantic versioning here. This is used on the play store to tell which versions come after others - that's why it's tied to git commits in getGitVersion

    • versionName however is shown to users - I'm using semantic versioning here and storing the real value in my package.json. Thanks to https://medium.com/@andr3wjack/versioning-react-native-apps-407469707661

    0 讨论(0)
  • 2020-12-12 11:49

    I had the same problem and I checked all the above answer, I had a made a silly mistake because of which nothing worked for me. Just in case any of you do same mistake as mine try this.

    1. Version can be a decimal number like 1.0 or 1.0.1 etc
    2. But VersionCode cannot be decimal number It should be 1,2,3 etc and not 1.1 or 2.2

    So in project/app/build.gradle

    android {
    defaultConfig {
        versionCode 1 // do not use decimal number here
        versionName "1.0" // you can use decimal number here.
        {...}
    }
    {...}
    }
    
    0 讨论(0)
提交回复
热议问题