Android 在生成时重命名的APK未运行

Android 在生成时重命名的APK未运行,android,android-studio,android-gradle-plugin,apk,build.gradle,Android,Android Studio,Android Gradle Plugin,Apk,Build.gradle,我在模块的build.gradle文件中使用此代码来重命名输出APK android.applicationVariants.all { variant -> variant.outputs.each { output -> def file = output.outputFile def formattedDate = new Date().format('yyyy_MM_dd_HH_mm')

我在模块的
build.gradle
文件中使用此代码来重命名输出APK

android.applicationVariants.all { variant ->
            variant.outputs.each { output ->
                def file = output.outputFile
                def formattedDate = new Date().format('yyyy_MM_dd_HH_mm')
                output.outputFile = new File(file.parent, file.name.replace(".apk",
                        "-" + formattedDate + ".apk"))
            }
        }
当我按下“运行”时,我在这里收到APK
build/outputs/APK/app-debug-2016\u 01\u 11\u 13\u 23。APK
并在运行控制台中得到一个错误:

The APK file .../build/outputs/apk/app-debug-2016_01_11_13_21.apk does not exist on disk.
每次按“运行”时,我都会收到
/build/outputs/APK/
文件夹中的新APK,但错误相同。看起来Android Studio使用了应用程序名称的旧值

我使用以下运行配置:


您可以随意提出任何建议。

android studio的当前版本1.5.1中似乎有一个新版本。 我和你有同样的问题,但我只想重新命名发布版apk

因此,我结束了这个快速解决方案,仅当选定的SignInFig是release one时才重命名apk:

android.applicationVariants.all { variant ->
    if (variant.buildType.signingConfig.getName() == android.signingConfigs.release.getName()) {
        variant.outputs.each { output ->
            def file = output.outputFile
            def formattedDate = new Date().format('yyyy_MM_dd_HH_mm')
            output.outputFile = new File(file.parent, file.name.replace(".apk",
                    "-" + formattedDate + ".apk"))
        }
    }
}

所有调试版本都将具有相同的名称,因此在将apk名称上传到设备之前,Android Studio是否难以刷新apk名称并不重要。

“请随意给出任何建议。”——这真的会给你带来各种各样的笑话。像这个;)我对这种异步问题很困惑。我非常乐意接受任何帮助。请用你的笑话的力量试着回答:回答同样的问题:(