Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gradle Android-覆盖标准任务_Android_Gradle - Fatal编程技术网

Gradle Android-覆盖标准任务

Gradle Android-覆盖标准任务,android,gradle,Android,Gradle,我正试图将我的Gradle版本的行为定制为对Android Wear友好 我正在手动将我的wear apk绑定到我的handled apk中(因为我没有自动完成) 这意味着,如果我想构建一个新版本的处理过的apk,我必须手动构建我的磨损apk,在导入处理过的项目的我的res/raw中复制/超过生成的磨损apk,然后构建新的处理过的apk 我希望所有这些都能自动化 因此,我需要做的是: 启动应用程序:AssemblereRelease from cmd line Gradle首先做一件衣服:轻松

我正试图将我的Gradle版本的行为定制为对Android Wear友好

我正在手动将我的wear apk绑定到我的handled apk中(因为我没有自动完成)

这意味着,如果我想构建一个新版本的处理过的apk,我必须手动构建我的磨损apk,在导入处理过的项目的我的res/raw中复制/超过生成的磨损apk,然后构建新的处理过的apk

我希望所有这些都能自动化

因此,我需要做的是:

  • 启动应用程序:AssemblereRelease from cmd line
  • Gradle首先做一件衣服:轻松
  • 最后,Gradle从
    wear/output/apk/wear apk.apk
    获取apk,并将其复制到
    app/src/main/res/raw
  • 然后Gradle可以开始做app:assembleerelease
  • 我不知道如何从另一个任务启动一个任务(wear:assembleerelease)


    欢迎任何帮助

    我找到了一个可能不是最优的解决方案,但它符合我的需要

    在我的handled应用程序中,我首先必须说assembleRelease取决于我的穿着:assembleRelease:

    app/build.gradle

    project.afterEvaluate {
        preReleaseBuild.dependsOn(':wear:assembleRelease')
    }
    
    assembleRelease << {
        println "Copying the Wear APK"
        copy {
            from 'build/outputs/apk'
            into '../app/src/main/assets'
            include '**/wear-release.apk'
        }
    }
    
    preReleaseBuild
    是构建的第一个任务之一,但此任务是动态创建的,这就是为什么在评估项目后必须对其进行包装

    然后,在我的wear
    build.gradle
    中,我必须在构建结束时指定副本:

    穿/造.gradle

    project.afterEvaluate {
        preReleaseBuild.dependsOn(':wear:assembleRelease')
    }
    
    assembleRelease << {
        println "Copying the Wear APK"
        copy {
            from 'build/outputs/apk'
            into '../app/src/main/assets'
            include '**/wear-release.apk'
        }
    }
    
    assembleerelease