2016-03-10 15 views
39

私はReact native with Androidを使用しています。アプリでバージョン番号を更新するにはどうすればよいですか?このエラーが発生しています。反応するネイティブアプリのバージョン番号を更新するには

私はこのURL私はAndroidManifest.xmlファイルを変更しようとしている https://facebook.github.io/react-native/docs/signed-apk-android.html

ごとにファイルを生成していますが、私はそれを構築した後、そのファイルが自動的に変更されます。自動的に変更したファイルをビルドし、後

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.facebook.react" 
    android:versionCode="2" 
    android:versionName="1.1" > 

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.facebook.react" 
    android:versionCode="1" 
    android:versionName="1.0" > 

ここで、私は、XMLを変更しました。

enter image description here

+1

にアンドロイド:versionCodeは=「2」がバージョンコード&バージョンのコードを増加させる必要があるPlayストアにAPKをアップロードする時はいつでもあなたが欲しいものは何でも保つことができるわけ – Ajinkya

+0

には影響しませんしません私はすでにそれをしています。私は私の質問を修正しました。 –

答えて

65

あなたは​​であなたのversionCodeversionNameを変更する必要があります。

android { 

    defaultConfig { 

     versionCode 1 
     versionName "1.0" 

     {...} 
    } 

    {...} 
} 
+0

ありがとう、私はそのファイルを何度も見たが、その部分を見逃してしまった。 –

+2

あなたが指摘したファイルに解決策が見つかりましたが、それは実際は少し下にあります。 ** applicationVariants **で始まったセクションがあり、そこには** output.versionCodeOverride **が設定されていました。名前が示唆していたとおりにファイルの先頭にあるものを上書きしました。 – AidenMontgomery

+0

AndroidManifest.xmlで更新する必要はありますか? – Noitidart

35

@Josephロケが正しい、あなたは​​にバージョン番号を更新する必要があります。

これを自動化し、パッケージのバージョンpackage.jsonとgitコミットする方法は次のとおりです。​​で

/* 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" 
     } 
    } 

注:

  • それはversionCodeが整数であることが重要です - 私たちはここにセマンティックバージョニングを使用することはできません。これは、他の人の後に来るどのバージョンを伝えるためにPlayストアで使用されている - それはgitのに縛ら理由ですgetGitVersion

  • versionNameにコミットがしかし、ユーザーに示されている - 私はここで、セマンティックバージョニングを使用して、私の中で実際の値を格納していますpackage.json。おかげhttps://medium.com/@andr3wjack/versioning-react-native-apps-407469707661

+0

完璧な答え。それをして、魅力的に働いた。 – Lovato

+2

Andrew Jackは、非常によく似た方法と、中程度の記事のiOSの方法について説明しています:https://medium.com/@andr3wjack/versioning-react-native-apps-407469707661#.ky7l2lys7。彼らのビルドとバージョンを一致させたい人にとっては、大変参考になります。 – DBrown

関連する問題