1

我正在尝试将 Android 项目从 Ant 迁移到 Gradle。项目中有本机代码,所有来自 JNI 的 Java 代码调用都被自定义 ant 目标混淆。所以在 Ant 目标中按顺序调用:

  • 编译java代码
  • 运行proguard
  • proguard后根据mapping.txt修改JNI代码的自定义任务
  • 本机构建

在 Gradle 中,我使用 JNI 构建方法,在https://gist.github.com/pboos/5802233#file-ndk-build-gradle中有描述。在 Gradle 中调用顺序似乎是:

  • 构建原生
  • 编译java代码
  • 运行proguard
  • 用于修改的自定义任务

我应该怎么做,以便原生构建将在 proguard 之后运行?

换句话说,我需要定义任务,如果它存在,它将在proguard之后执行。

4

1 回答 1

0

不确定我是否正确解释了您的问题,但听起来您只是在寻找依赖项。

如果buildNative只能在之后运行,customModifications则使用标准依赖项:

buildNative {
    dependsOn customModifications
}

IfbuildNative必须在之后运行customModifications,但customModifications请求使用时mustRunAfter

buildNative {
   mustRunAfter customModifications
}
于 2013-10-17T01:55:50.523 回答