Gradle Builder

July 18, 2026 · View on GitHub

English | 简体中文

Gradle Builder currently builds APK and AAB artifacts for Android projects. It prefers the Gradle Wrapper in the project root and falls back to gradle from PATH when no wrapper is found.

Current Integration

TypeTargetCLI status
AndroidapkConnected through package
AndroidaabConnected through package
Multiplatform Androidandroid-apk, android-aabNo top-level CLI integration
Multiplatform DesktopdesktopNo top-level CLI integration
Multiplatform iOSios-frameworkNo top-level CLI integration

Android Builds

When packaging directly, Fastforge runs the Gradle build automatically:

fastforge package --platform android --target apk
fastforge package --platform android --target aab

The default build uses the Release variant. The Gradle task is generated from the target, flavor, and module:

TargetNo flavordev flavor
apkassembleReleaseassembleDevRelease
aabbundleReleasebundleDevRelease

When a module is specified, the task receives a module prefix, such as :androidApp:assembleDevRelease.

Workflow Arguments

To pass a flavor, module, or Gradle property, use the package action's build-args:

- name: Package Android APK
  uses: fastforge/package
  with:
    platform: android
    target: apk
    output: artifacts/
    build-args: '{"flavor":"dev","module":"app"}'

The builder recognizes these arguments:

ArgumentDescription
flavorAndroid product flavor
profileUse Profile when this key exists; otherwise Release
moduleGradle module name
gradle-propertyJSON object converted to -Pkey=value
system-propertyJSON object converted to -Dkey=value

build-args must be a JSON object string.

Artifact Locations

TargetDefault search location
APKapp/build/outputs/apk/
AABapp/build/outputs/bundle/

If the build command succeeds but no file with the expected extension is found, Fastforge treats the build as failed.

Multiplatform Builder

The build module also contains builders for Android APK/AAB, desktop distributions for the current host, and iOS XCFramework. They are not connected to fastforge build, fastforge package, or a built-in workflow action, so this page does not provide directly runnable Fastforge commands for them.