[ 
https://issues.apache.org/jira/browse/CB-11109?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nikhil Khandelwal resolved CB-11109.
------------------------------------
    Resolution: Incomplete

> Application not updating
> ------------------------
>
>                 Key: CB-11109
>                 URL: https://issues.apache.org/jira/browse/CB-11109
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: Android
>    Affects Versions: 5.0.1
>         Environment: Cordova
>            Reporter: Naveen Bannikoppa
>
>       I have created Cordova android application with version 1 it worked 
> till today, want to launch second version of the app from now with new 
> feature. Changed the version in config.xml version 2, and created apk signed 
> version with existing key-store and key password. Uploaded new version of apk 
> to live server(not app-store)but apk is not downloading , when I gone through 
> the configuration of the project it was totally wrong and am facing 
> difficulty in finding the solution. And my questions are configuration 
> project and creating apk. What are the necessary field to be changed in this. 
> Below file is the build.gradle
> /*
>        Licensed to the Apache Software Foundation (ASF) under one
>        or more contributor license agreements.  See the NOTICE file
>        distributed with this work for additional information
>        regarding copyright ownership.  The ASF licenses this file
>        to you under the Apache License, Version 2.0 (the
>        "License"); you may not use this file except in compliance
>        with the License.  You may obtain a copy of the License at
>          http://www.apache.org/licenses/LICENSE-2.0
>        Unless required by applicable law or agreed to in writing,
>        software distributed under the License is distributed on an
>        "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>        KIND, either express or implied.  See the License for the
>        specific language governing permissions and limitations
>        under the License.
> */
> // GENERATED FILE! DO NOT EDIT!
> apply plugin: 'android'
> buildscript {
>     repositories {
>         mavenCentral()
>     }
>     // Switch the Android Gradle plugin version requirement depending on the
>     // installed version of Gradle. This dependency is documented at
>     // 
> http://tools.android.com/tech-docs/new-build-system/version-compatibility
>     // and https://issues.apache.org/jira/browse/CB-8143
>     dependencies {
>         classpath 'com.android.tools.build:gradle:1.5.0'
>     }
>    }
> // Allow plugins to declare Maven dependencies via build-extras.gradle.
> repositories {
>     mavenCentral()
> }
> task wrapper(type: Wrapper) {
>     gradleVersion = '2.8'
> }
> // Configuration properties. Set these via environment variables, 
> build-extras.gradle, or gradle.properties.
> // Refer to: 
> http://www.gradle.org/docs/current/userguide/tutorial_this_and_that.html
> ext {
>     apply from: 'CordovaLib/cordova.gradle'
>     // The value for android.compileSdkVersion.
>     if (!project.hasProperty('cdvCompileSdkVersion')) {
>         cdvCompileSdkVersion = null;
>     }
>     // The value for android.buildToolsVersion.
>     if (!project.hasProperty('cdvBuildToolsVersion')) {
>         cdvBuildToolsVersion = null;
>     }
>     // Sets the versionCode to the given value.
>     if (!project.hasProperty('cdvVersionCode')) {
>         cdvVersionCode = null
>     }
>     // Sets the minSdkVersion to the given value.
>     if (!project.hasProperty('cdvMinSdkVersion')) {
>         cdvMinSdkVersion = null
>     }
>     // Whether to build architecture-specific APKs.
>     if (!project.hasProperty('cdvBuildMultipleApks')) {
>         cdvBuildMultipleApks = null
>     }
>     // .properties files to use for release signing.
>     if (!project.hasProperty('cdvReleaseSigningPropertiesFile')) {
>         cdvReleaseSigningPropertiesFile = null
>     }
>     // .properties files to use for debug signing.
>     if (!project.hasProperty('cdvDebugSigningPropertiesFile')) {
>         cdvDebugSigningPropertiesFile = null
>     }
>     // Set by build.js script.
>     if (!project.hasProperty('cdvBuildArch')) {
>         cdvBuildArch = null
>     }
>     // Plugin gradle extensions can append to this to have code run at the 
> end.
>     cdvPluginPostBuildExtras = []
> }
> // PLUGIN GRADLE EXTENSIONS START
> // PLUGIN GRADLE EXTENSIONS END
> def hasBuildExtras = file('build-extras.gradle').exists()
> if (hasBuildExtras) {
>     apply from: 'build-extras.gradle'
> }
> // Set property defaults after extension .gradle files.
> if (ext.cdvCompileSdkVersion == null) {
>     ext.cdvCompileSdkVersion = privateHelpers.getProjectTarget()
> }
> if (ext.cdvBuildToolsVersion == null) {
>     ext.cdvBuildToolsVersion = privateHelpers.findLatestInstalledBuildTools()
> }
> if (ext.cdvDebugSigningPropertiesFile == null && 
> file('debug-signing.properties').exists()) {
>     ext.cdvDebugSigningPropertiesFile = 'debug-signing.properties'
> }
> if (ext.cdvReleaseSigningPropertiesFile == null && 
> file('release-signing.properties').exists()) {
>     ext.cdvReleaseSigningPropertiesFile = 'release-signing.properties'
> }
> // Cast to appropriate types.
> ext.cdvBuildMultipleApks = cdvBuildMultipleApks == null ? false : 
> cdvBuildMultipleApks.toBoolean();
> ext.cdvMinSdkVersion = cdvMinSdkVersion == null ? null : Integer.parseInt('' 
> + cdvMinSdkVersion)
> ext.cdvVersionCode = cdvVersionCode == null ? null : Integer.parseInt('' + 
> cdvVersionCode)
> def computeBuildTargetName(debugBuild) {
>     def ret = 'assemble'
>     if (cdvBuildMultipleApks && cdvBuildArch) {
>         def arch = cdvBuildArch == 'arm' ? 'armv7' : cdvBuildArch
>         ret += '' + arch.toUpperCase().charAt(0) + arch.substring(1);
>     }
>     return ret + (debugBuild ? 'Debug' : 'Release')
> }
> // Make cdvBuild a task that depends on the debug/arch-sepecific task.
> task cdvBuildDebug
> cdvBuildDebug.dependsOn {
>     return computeBuildTargetName(true)
> }
> task cdvBuildRelease
> cdvBuildRelease.dependsOn {
>     return computeBuildTargetName(false)
> }
> task cdvPrintProps << {
>     println('cdvCompileSdkVersion=' + cdvCompileSdkVersion)
>     println('cdvBuildToolsVersion=' + cdvBuildToolsVersion)
>     println('cdvVersionCode=' + cdvVersionCode)
>     println('cdvMinSdkVersion=' + cdvMinSdkVersion)
>     println('cdvBuildMultipleApks=' + cdvBuildMultipleApks)
>     println('cdvReleaseSigningPropertiesFile=' + 
> cdvReleaseSigningPropertiesFile)
>     println('cdvDebugSigningPropertiesFile=' + cdvDebugSigningPropertiesFile)
>     println('cdvBuildArch=' + cdvBuildArch)
>     println('computedVersionCode=' +  .defaultConfig.versionCode)
>     android.productFlavors.each { flavor ->
>         println('computed' + flavor.name.capitalize() + 'VersionCode=' + 
> flavor.versionCode)
>     }
> }
> android {
>     sourceSets {
>         main {
>             manifest.srcFile 'AndroidManifest.xml'
>             java.srcDirs = ['src']
>             resources.srcDirs = ['src']
>             aidl.srcDirs = ['src']
>             renderscript.srcDirs = ['src']
>             res.srcDirs = ['res']
>             assets.srcDirs = ['assets']
>             jniLibs.srcDirs = ['libs']
>         }
>     }
>     defaultConfig {
>         versionCode cdvVersionCode ?: Integer.parseInt("" + 
> privateHelpers.extractIntFromManifest("versionCode") + "0")
>         applicationId privateHelpers.extractStringFromManifest("package")
>         if (cdvMinSdkVersion != null) {
>             minSdkVersion cdvMinSdkVersion
>         }
>     }
>     lintOptions {
>       abortOnError false;
>     }
>     compileSdkVersion cdvCompileSdkVersion
>     buildToolsVersion cdvBuildToolsVersion
>     if (Boolean.valueOf(cdvBuildMultipleApks)) {
>         productFlavors {
>             armv7 {
>                 versionCode defaultConfig.versionCode + 2
>                 ndk {
>                     abiFilters "armeabi-v7a", ""
>                 }
>             }
>             x86 {
>                 versionCode defaultConfig.versionCode + 4
>                 ndk {
>                     abiFilters "x86", ""
>                 }
>             }
>             all {
>                 ndk {
>                     abiFilters "all", ""
>                 }
>             }
>         }
>     } else if (!cdvVersionCode) {
>       def minSdkVersion = cdvMinSdkVersion ?: 
> privateHelpers.extractIntFromManifest("minSdkVersion")
>       // Vary versionCode by the two most common API levels:
>       // 14 is ICS, which is the lowest API level for many apps.
>       // 20 is Lollipop, which is the lowest API level for the updatable 
> system webview.
>       if (minSdkVersion >= 20) {
>         defaultConfig.versionCode += 9
>       } else if (minSdkVersion >= 14) {
>         defaultConfig.versionCode += 8
>       }
>     }
>     compileOptions {
>         sourceCompatibility JavaVersion.VERSION_1_6
>         targetCompatibility JavaVersion.VERSION_1_6
>     }
>     if (cdvReleaseSigningPropertiesFile) {
>         signingConfigs {
>             release {
>                 // These must be set or Gradle will complain (even if they 
> are overridden).
>                 keyAlias = ""
>                 keyPassword = "__unset" // And these must be set to non-empty 
> in order to have the signing step added to the task graph.
>                 storeFile = null
>                 storePassword = "__unset"
>             }
>         }
>         buildTypes {
>             release {
>                 signingConfig signingConfigs.release
>             }
>         }
>         addSigningProps(cdvReleaseSigningPropertiesFile, 
> signingConfigs.release)
>     }
>     if (cdvDebugSigningPropertiesFile) {
>         addSigningProps(cdvDebugSigningPropertiesFile, signingConfigs.debug)
>     }
> }
> dependencies {
>     compile fileTree(dir: 'libs', include: '*.jar')
>     // SUB-PROJECT DEPENDENCIES START
>     debugCompile project(path: "CordovaLib", configuration: "debug")
>     releaseCompile project(path: "CordovaLib", configuration: "release")
>     compile "com.android.support:support-v4:+"
>     // SUB-PROJECT DEPENDENCIES END
> }
> def promptForReleaseKeyPassword() {
>     if (!cdvReleaseSigningPropertiesFile) {
>         return;
>     }
>     if ('__unset'.equals(android.signingConfigs.release.storePassword)) {
>         android.signingConfigs.release.storePassword = 
> privateHelpers.promptForPassword('Enter key store password: ')
>     }
>     if ('__unset'.equals(android.signingConfigs.release.keyPassword)) {
>         android.signingConfigs.release.keyPassword = 
> privateHelpers.promptForPassword('Enter key password: ');
>     }
> }
> gradle.taskGraph.whenReady { taskGraph ->
>     taskGraph.getAllTasks().each() { task ->
>         if (task.name == 'validateReleaseSigning') {
>             promptForReleaseKeyPassword()
>         }
>     }
> }
> def addSigningProps(propsFilePath, signingConfig) {
>     def propsFile = file(propsFilePath)
>     def props = new Properties()
>     propsFile.withReader { reader ->
>         props.load(reader)
>     }
>     def storeFile = new File(props.get('key.store') ?: 
> privateHelpers.ensureValueExists(propsFilePath, props, 'storeFile'))
>     if (!storeFile.isAbsolute()) {
>         storeFile = RelativePath.parse(true, 
> storeFile.toString()).getFile(propsFile.getParentFile())
>     }
>     if (!storeFile.exists()) {
>         throw new FileNotFoundException('Keystore file does not exist: ' + 
> storeFile.getAbsolutePath())
>     }
>     signingConfig.keyAlias = props.get('key.alias') ?: 
> privateHelpers.ensureValueExists(propsFilePath, props, 'keyAlias')
>     signingConfig.keyPassword = props.get('keyPassword', 
> props.get('key.alias.password', signingConfig.keyPassword))
>     signingConfig.storeFile = storeFile
>     signingConfig.storePassword = props.get('storePassword', 
> props.get('key.store.password', signingConfig.storePassword))
>     def storeType = props.get('storeType', props.get('key.store.type', ''))
>     if (!storeType) {
>         def filename = storeFile.getName().toLowerCase();
>         if (filename.endsWith('.p12') || filename.endsWith('.pfx')) {
>             storeType = 'pkcs12'
>         } else {
>             storeType = signingConfig.storeType // "jks"
>         }
>     }
>     signingConfig.storeType = storeType
> }
> for (def func : cdvPluginPostBuildExtras) {
>     func()
> }
> // This can be defined within build-extras.gradle as:
> //     ext.postBuildExtras = { ... code here ... }
> if (hasProperty('postBuildExtras')) {
>     postBuildExtras()
> }



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to