2017-05-12 7 views
-2

GoogleがversionCodeやversionNameのようなgradleファイルで使用しているGoogleドキュメントの値に基づいてマニフェストファイルを更新する必要があります。したがって、私たちの場合、build.gradleファイルのversionCodeに日付と時刻を追加しようとしています。しかし、gradleがバージョンコードをマニフェストファイルに更新していないようです。これは正常な動作ですか?GradleがversionCodeとVersionNameをmanifest.xmlファイルに更新していません

のGradleはファイル:

def date = new Date() 
def formattedDate = date.format('yyMMddHHmm') 
def code = formattedDate.toInteger() 
android {  
    defaultConfig { 
    versionCode code 
    } 
} 

マニフェストファイル

<manifest android:hardwareAccelerated="true" android:versionCode="101" android:versionName="1.0.0" package="com.xxxx" xmlns:android="http://schemas.android.com/apk/res/android"> 

を、私たちはあらゆるものが不足していますか?

答えて

0

警告:android:versionCodeの可能な最大値はMAXINT(2147483647)です。ただし、この値でアプリをアップロードすると、アプリを更新することはできません。

versionCode - 他のバージョンに対して、アプリケーション・コードのバージョンを表す整数値。

versionName - アプリケーションコードのリリースバージョンを表す文字列値。ユーザに表示する必要があります。

あなたは、私がproductFlavoursでversionCodeを追加することでこれを解決したバージョンコード

def getDateTime() { 
    DateFormat df = new SimpleDateFormat("yyMMddHH"); 
    return df.format(new Date()).toInteger(); 
} 
0

の長さにカットするかどうかを解決することができます。なぜGradleビルドがdefaultConfigブロックからversionCodeを選んでいないのか分かりません。

def date = new Date() 
def formattedDate = date.format('yyMMddHH') 
def code = formattedDate.toInteger() 
productFlavors { 
    Release { 
     minSdkVersion 23 
     targetSdkVersion 25 
     versionCode code 
    } 
関連する問題