title: Does BuildConfig.VERSION_CODE not get changed if we are using multiple APK's
body: <p>I am creating <a href="https://developer.android.com/studio/build/configure-apk-splits.html#configure-abi-split" rel="noreferrer">multiple apk's</a> for each <code>ABI</code>, I did this to assign separate version code to each apk. </p>
  
  <pre><code>ext.abiCodes = ['armeabi-v7a':1, mips:2, x86:3]
  
  import com.android.build.OutputFile
  android.applicationVariants.all { variant -&gt;
      variant.outputs.each { output -&gt;
          def baseAbiVersionCode =
                  project.ext.abiCodes.get(output.getFilter(OutputFile.ABI))
  
          if (baseAbiVersionCode != null) {
              output.versionCodeOverride =
                      baseAbiVersionCode * 1000 + variant.versionCode
          }
      }
  } 
  </code></pre>
  
  <p>This is my <code>dafaultConfig</code>, and the following <code>versionCode</code> is for <code>universalApk</code></p>
  
  <pre><code> defaultConfig {
          versionCode 74
          versionName "1.0.2"
  }
  </code></pre>
  
  <p>I append the <code>versionCode</code> with each service request, I also display the <code>versionCode</code> in one of the activity. So i need the correct <code>versionCode</code> to perform these operations, I use this code to get <code>versionCode</code></p>
  
  <pre><code>int versionCode = BuildConfig.VERSION_CODE;
  </code></pre>
  
  <p>Now the problem is that, it displays the <code>versionCode</code> that is stated in <code>defaultConfig</code> and not the one that actually represents the build. </p>
  
  <p>I need to know that how can i get the <code>versionCode</code> that is assigned to this build, that may be some number greater than <code>1000</code>, and not the one that is assigned in <code>dafaultConfig</code></p>